diff options
| author | Jakub Stasiak <jakub@stasiak.at> | 2014-10-11 02:10:35 +0100 |
|---|---|---|
| committer | Jakub Stasiak <jakub@stasiak.at> | 2014-10-11 18:48:49 +0100 |
| commit | 3df8dc2263a9702657c344d3a1c9ed4035a4a24b (patch) | |
| tree | 2a2d45dfa28d6a17c7eba529d19ec45b463d3c20 /eventlet/green | |
| parent | e61bb738b8a9231b84fa13a0c985fc3b43a86d29 (diff) | |
| download | eventlet-3df8dc2263a9702657c344d3a1c9ed4035a4a24b.tar.gz | |
Python 3 compat: Improve SSL and WSGI compat
Diffstat (limited to 'eventlet/green')
| -rw-r--r-- | eventlet/green/ssl.py | 15 |
1 files changed, 9 insertions, 6 deletions
diff --git a/eventlet/green/ssl.py b/eventlet/green/ssl.py index 5169898..0fdde5d 100644 --- a/eventlet/green/ssl.py +++ b/eventlet/green/ssl.py @@ -7,7 +7,7 @@ import sys import errno time = __import__('time') -from eventlet.support import get_errno, six +from eventlet.support import get_errno, PY33, six from eventlet.hubs import trampoline, IOClosed from eventlet.greenio import set_nonblocking, GreenSocket, SOCKET_CLOSED, CONNECT_ERR, CONNECT_SUCCESS orig_socket = __import__('socket') @@ -281,13 +281,16 @@ class GreenSSLSocket(_original_sslsocket): except AttributeError: # sslwrap was removed in 3.x and later in 2.7.9 if six.PY2: - self._sslobj = self._context._wrap_socket(self._sock, server_side, ssl_sock=self) + sslobj = self._context._wrap_socket(self._sock, server_side, ssl_sock=self) else: - self._sslobj = self._context._wrap_socket(self, server_side) + context = self.context if PY33 else self._context + sslobj = context._wrap_socket(self, server_side) else: - self._sslobj = sslwrap(self._sock, server_side, self.keyfile, self.certfile, - self.cert_reqs, self.ssl_version, - self.ca_certs, *([self.ciphers] if has_ciphers else [])) + sslobj = sslwrap(self._sock, server_side, self.keyfile, self.certfile, + self.cert_reqs, self.ssl_version, + self.ca_certs, *([self.ciphers] if has_ciphers else [])) + + self._sslobj = sslobj if self.do_handshake_on_connect: self.do_handshake() |
