diff --git a/Lib/ssl.py b/Lib/ssl.py index 1d29bef72d6..bfeb559f82c 100644 --- a/Lib/ssl.py +++ b/Lib/ssl.py @@ -78,6 +78,7 @@ from _ssl import \ 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 @@ class SSLSocket(socket): # 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: