diff --git a/pkgs/development/python-modules/gevent_sslwrap.patch b/pkgs/development/python-modules/gevent_sslwrap.patch new file mode 100644 index 000000000000..6f104a638f07 --- /dev/null +++ b/pkgs/development/python-modules/gevent_sslwrap.patch @@ -0,0 +1,28 @@ +Index: b/gevent/ssl.py +=================================================================== +--- a/gevent/ssl.py ++++ b/gevent/ssl.py +@@ -81,15 +81,14 @@ class SSLSocket(socket): + self._sslobj = None + else: + # yes, create the SSL object +- if ciphers is None: +- self._sslobj = _ssl.sslwrap(self._sock, server_side, +- keyfile, certfile, +- cert_reqs, ssl_version, ca_certs) +- else: +- self._sslobj = _ssl.sslwrap(self._sock, server_side, +- keyfile, certfile, +- cert_reqs, ssl_version, ca_certs, +- ciphers) ++ ctx = SSLContext(ssl_version) ++ if keyfile or certfile: ++ ctx.load_cert_chain(certfile, keyfile) ++ if ca_certs: ++ ctx.load_verify_locations(ca_certs) ++ if ciphers: ++ ctx.set_ciphers(ciphers) ++ self._sslobj = ctx._wrap_socket(self._sock, server_side=server_side) + if do_handshake_on_connect: + self.do_handshake() + self.keyfile = keyfile diff --git a/pkgs/top-level/python-packages.nix b/pkgs/top-level/python-packages.nix index 85e308bc9dc2..78288dbb5da7 100644 --- a/pkgs/top-level/python-packages.nix +++ b/pkgs/top-level/python-packages.nix @@ -3973,23 +3973,18 @@ let }; }; - eventlet = buildPythonPackage rec { - name = "eventlet-0.15.1"; + name = "eventlet-0.16.1"; src = pkgs.fetchurl { url = "http://pypi.python.org/packages/source/e/eventlet/${name}.tar.gz"; - md5 = "7155780824bb6344651a573838416f21"; + md5 = "58f6e5cd1bcd8ab78e32a2594aa0abad"; }; - buildInputs = with self; [ nose httplib2 ]; + buildInputs = with self; [ nose httplib2 pyopenssl ]; propagatedBuildInputs = optionals (!isPyPy) [ self.greenlet ]; - PYTHON_EGG_CACHE = "`pwd`/.egg-cache"; - - doCheck = false; # !!! fix; tests access the network - meta = { homepage = http://pypi.python.org/pypi/eventlet/; description = "A concurrent networking library for Python"; @@ -4326,7 +4321,7 @@ let sha256 = "16cddyk5is0gjfn0ia5n2l4lhdzvbjzlx6sfpy7ddjd3d3fq7ckl"; }; - propagatedBuildInputs = with self; [ twisted self.pyopenssl ]; + propagatedBuildInputs = [ self.twisted self.pyopenssl ]; meta = { homepage = http://foolscap.lothar.com/; @@ -4484,6 +4479,8 @@ let url = "https://pypi.python.org/packages/source/g/gevent/${name}.tar.gz"; sha256 = "0hyzfb0gcx9pm5c2igan8y57hqy2wixrwvdjwsaivxsqs0ay49s6"; }; + + patches = [ ../development/python-modules/gevent_sslwrap.patch ]; buildInputs = with self; [ pkgs.libev ]; propagatedBuildInputs = optionals (!isPyPy) [ self.greenlet ];