| 1234567891011121314151617181920212223242526 |
- """
- Secure Sockets Layer (SSL/TLS) module.
- """
- from gevent._compat import PY2
- from gevent._util import copy_globals
- # things we expect to override, here for static analysis
- def wrap_socket(_sock, **_kwargs):
- # pylint:disable=unused-argument
- raise NotImplementedError()
- if PY2:
- if hasattr(__import__('ssl'), 'SSLContext'):
- # It's not sufficient to check for >= 2.7.9; some distributions
- # have backported most of PEP 466. Try to accommodate them. See Issue #702.
- # We're just about to import ssl anyway so it's fine to import it here, just
- # don't pollute the namespace
- from gevent import _sslgte279 as _source
- else:
- from gevent import _ssl2 as _source # pragma: no cover
- else:
- # Py3
- from gevent import _ssl3 as _source # pragma: no cover
- copy_globals(_source, globals())
|