summaryrefslogtreecommitdiffstats
path: root/Lib
diff options
context:
space:
mode:
authorCollin Winter <collinw@gmail.com>2007-03-10 02:51:26 (GMT)
committerCollin Winter <collinw@gmail.com>2007-03-10 02:51:26 (GMT)
commit22c42ba88c7b28d4840078672bc7cefc75b95f71 (patch)
tree4eb09e0fc8fc10191660c582cabd4d67b7bc5d35 /Lib
parentdbead56cb603e5e34bad0dc6e066d7dec411b422 (diff)
downloadcpython-22c42ba88c7b28d4840078672bc7cefc75b95f71.zip
cpython-22c42ba88c7b28d4840078672bc7cefc75b95f71.tar.gz
cpython-22c42ba88c7b28d4840078672bc7cefc75b95f71.tar.bz2
Bug #1531963: Make SocketServer.TCPServer's server_address always be equal to calling getsockname() on the server's socket.
Will backport.
Diffstat (limited to 'Lib')
-rw-r--r--Lib/SocketServer.py1
-rw-r--r--Lib/test/test_socketserver.py1
2 files changed, 2 insertions, 0 deletions
diff --git a/Lib/SocketServer.py b/Lib/SocketServer.py
index 3a74c44..7d9b9a5 100644
--- a/Lib/SocketServer.py
+++ b/Lib/SocketServer.py
@@ -339,6 +339,7 @@ class TCPServer(BaseServer):
if self.allow_reuse_address:
self.socket.setsockopt(socket.SOL_SOCKET, socket.SO_REUSEADDR, 1)
self.socket.bind(self.server_address)
+ self.server_address = self.socket.getsockname()
def server_activate(self):
"""Called by constructor to activate the server.
diff --git a/Lib/test/test_socketserver.py b/Lib/test/test_socketserver.py
index e4cbb2b..6232175 100644
--- a/Lib/test/test_socketserver.py
+++ b/Lib/test/test_socketserver.py
@@ -84,6 +84,7 @@ class ServerThread(threading.Thread):
addr = getattr(svr, 'server_address')
if addr:
self.__addr = addr
+ assert self.__addr == svr.socket.getsockname()
if verbose: print "thread: serving three times"
svr.serve_a_few()
if verbose: print "thread: done"