Mercurial > cpython-lru_cache-weakref
diff Lib/ssl.py @ 60985:7fc211df3d5b legacy-trunk
When calling getpeername() in SSLSocket.__init__, only silence exceptions
caused by the "socket not connected" condition.
| author | Antoine Pitrou <solipsis@pitrou.net> |
|---|---|
| date | Mon, 26 Apr 2010 17:23:33 +0000 |
| parents | 76a052eedee6 |
| children | fd3abf82ac96 |
line wrap: on
line diff
--- a/Lib/ssl.py Mon Apr 26 16:54:57 2010 +0000 +++ b/Lib/ssl.py Mon Apr 26 17:23:33 2010 +0000 @@ -78,6 +78,7 @@ from socket import socket, _fileobject, _delegate_methods, error as socket_error from socket import getnameinfo as _getnameinfo import base64 # for DER-to-PEM translation +import errno class SSLSocket(socket): @@ -105,7 +106,9 @@ # see if it's connected try: socket.getpeername(self) - except socket_error: + except socket_error, e: + if e.errno != errno.ENOTCONN: + raise # no, no connection yet self._sslobj = None else:
