[pypy-commit] pypy stdlib-2.7.9: provide SSLContext.options
bdkearns
noreply at buildbot.pypy.org
Sun Dec 21 03:02:17 CET 2014
Author: Brian Kearns <bdkearns at gmail.com>
Branch: stdlib-2.7.9
Changeset: r75042:e8524db1d39c
Date: 2014-12-20 21:00 -0500
http://bitbucket.org/pypy/pypy/changeset/e8524db1d39c/
Log: provide SSLContext.options
diff --git a/pypy/module/_ssl/interp_ssl.py b/pypy/module/_ssl/interp_ssl.py
--- a/pypy/module/_ssl/interp_ssl.py
+++ b/pypy/module/_ssl/interp_ssl.py
@@ -6,7 +6,7 @@
from pypy.interpreter.baseobjspace import W_Root
from pypy.interpreter.error import OperationError, oefmt
from pypy.interpreter.gateway import interp2app, unwrap_spec
-from pypy.interpreter.typedef import TypeDef
+from pypy.interpreter.typedef import TypeDef, GetSetProperty
from pypy.module._socket import interp_socket
@@ -844,11 +844,15 @@
libssl_ERR_clear_error()
raise ssl_error(space, "No cipher can be selected.")
+ def descr_get_options(self, space):
+ return space.newlong(libssl_SSL_CTX_get_options(self.ctx))
+
_SSLContext.typedef = TypeDef("_SSLContext",
__module__ = "_ssl",
__new__ = interp2app(_SSLContext.descr_new),
_wrap_socket = interp2app(_SSLContext.descr_wrap_socket),
set_ciphers = interp2app(_SSLContext.descr_set_ciphers),
+ options = GetSetProperty(_SSLContext.descr_get_options),
)
diff --git a/pypy/module/_ssl/test/test_ssl.py b/pypy/module/_ssl/test/test_ssl.py
--- a/pypy/module/_ssl/test/test_ssl.py
+++ b/pypy/module/_ssl/test/test_ssl.py
@@ -110,6 +110,10 @@
('IP Address', '192.0.2.1'),
('IP Address', '2001:DB8:0:0:0:0:0:1\n'))
+ def test_context(self):
+ import _ssl
+ s = _ssl._SSLContext(_ssl.PROTOCOL_TLSv1)
+ assert type(s.options) is long
class AppTestConnectedSSL:
spaceconfig = {
More information about the pypy-commit
mailing list