summaryrefslogtreecommitdiffstats
path: root/meta-phosphor/common/recipes-devtools/python/python-gevent/0001-gevent-py279-ssl-wrap.patch
blob: 3edf243ff5e8d2ce3a467c9b51c949aa6ff247fe (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
--- a/gevent/ssl.py  2015-03-13 05:44:39.000000000 +0800
+++ b/gevent/ssl.py  2015-03-13 05:44:24.000000000 +0800
@@ -19,6 +19,25 @@
 except AttributeError:
     _ssl = __ssl__._ssl2

+import inspect
+
+
+def new_sslwrap(sock, server_side=False, keyfile=None, certfile=None, cert_reqs=__ssl__.CERT_NONE, ssl_version=__ssl__.PROTOCOL_SSLv23, ca_certs=None, ciphers=None):
+    context = __ssl__.SSLContext(ssl_version)
+    context.verify_mode = cert_reqs or __ssl__.CERT_NONE
+    if ca_certs:
+        context.load_verify_locations(ca_certs)
+    if certfile:
+        context.load_cert_chain(certfile, keyfile)
+    if ciphers:
+        context.set_ciphers(ciphers)
+
+    caller_self = inspect.currentframe().f_back.f_locals['self']
+    return context._wrap_socket(sock, server_side=server_side, ssl_sock=caller_self)
+
+if not hasattr(_ssl, 'sslwrap'):
+    _ssl.sslwrap = new_sslwrap
+
 import sys
 import errno
 from gevent.socket import socket, _fileobject, timeout_default
OpenPOWER on IntegriCloud