1Metadata-Version: 2.1
2Name: pyOpenSSL
3Version: 20.0.1
4Summary: Python wrapper module around the OpenSSL library
5Home-page: https://pyopenssl.org/
6Author: The pyOpenSSL developers
7Author-email: cryptography-dev@python.org
8License: Apache License, Version 2.0
9Platform: UNKNOWN
10Classifier: Development Status :: 6 - Mature
11Classifier: Intended Audience :: Developers
12Classifier: License :: OSI Approved :: Apache Software License
13Classifier: Operating System :: MacOS :: MacOS X
14Classifier: Operating System :: Microsoft :: Windows
15Classifier: Operating System :: POSIX
16Classifier: Programming Language :: Python :: 2
17Classifier: Programming Language :: Python :: 2.7
18Classifier: Programming Language :: Python :: 3
19Classifier: Programming Language :: Python :: 3.5
20Classifier: Programming Language :: Python :: 3.6
21Classifier: Programming Language :: Python :: 3.7
22Classifier: Programming Language :: Python :: 3.8
23Classifier: Programming Language :: Python :: 3.9
24Classifier: Programming Language :: Python :: Implementation :: CPython
25Classifier: Programming Language :: Python :: Implementation :: PyPy
26Classifier: Topic :: Security :: Cryptography
27Classifier: Topic :: Software Development :: Libraries :: Python Modules
28Classifier: Topic :: System :: Networking
29Requires-Python: >=2.7,!=3.0.*,!=3.1.*,!=3.2.*,!=3.3.*,!=3.4.*
30Provides-Extra: test
31Provides-Extra: docs
32License-File: LICENSE
33
34========================================================
35pyOpenSSL -- A Python wrapper around the OpenSSL library
36========================================================
37
38.. image:: https://readthedocs.org/projects/pyopenssl/badge/?version=stable
39   :target: https://pyopenssl.org/en/stable/
40   :alt: Stable Docs
41
42.. image:: https://travis-ci.com/pyca/pyopenssl.svg?branch=master
43   :target: https://travis-ci.com/pyca/pyopenssl
44   :alt: Build status
45
46.. image:: https://codecov.io/github/pyca/pyopenssl/branch/master/graph/badge.svg
47   :target: https://codecov.io/github/pyca/pyopenssl
48   :alt: Test coverage
49
50**Note:** The Python Cryptographic Authority **strongly suggests** the use of `pyca/cryptography`_
51where possible. If you are using pyOpenSSL for anything other than making a TLS connection
52**you should move to cryptography and drop your pyOpenSSL dependency**.
53
54High-level wrapper around a subset of the OpenSSL library. Includes
55
56* ``SSL.Connection`` objects, wrapping the methods of Python's portable sockets
57* Callbacks written in Python
58* Extensive error-handling mechanism, mirroring OpenSSL's error codes
59
60... and much more.
61
62You can find more information in the documentation_.
63Development takes place on GitHub_.
64
65
66Discussion
67==========
68
69If you run into bugs, you can file them in our `issue tracker`_.
70
71We maintain a cryptography-dev_ mailing list for both user and development discussions.
72
73You can also join ``#cryptography-dev`` on Freenode to ask questions or get involved.
74
75
76.. _documentation: https://pyopenssl.org/
77.. _`issue tracker`: https://github.com/pyca/pyopenssl/issues
78.. _cryptography-dev: https://mail.python.org/mailman/listinfo/cryptography-dev
79.. _GitHub: https://github.com/pyca/pyopenssl
80.. _`pyca/cryptography`: https://github.com/pyca/cryptography
81
82
83Release Information
84===================
85
8620.0.1 (2020-12-15)
87-------------------
88
89Backward-incompatible changes:
90^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
91
92Deprecations:
93^^^^^^^^^^^^^
94
95Changes:
96^^^^^^^^
97
98- Fixed compatibility with OpenSSL 1.1.0.
99
10020.0.0 (2020-11-27)
101-------------------
102
103
104Backward-incompatible changes:
105^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
106
107- The minimum ``cryptography`` version is now 3.2.
108- Remove deprecated ``OpenSSL.tsafe`` module.
109- Removed deprecated ``OpenSSL.SSL.Context.set_npn_advertise_callback``, ``OpenSSL.SSL.Context.set_npn_select_callback``, and ``OpenSSL.SSL.Connection.get_next_proto_negotiated``.
110- Drop support for Python 3.4
111- Drop support for OpenSSL 1.0.1 and 1.0.2
112
113Deprecations:
114^^^^^^^^^^^^^
115
116- Deprecated ``OpenSSL.crypto.loads_pkcs7`` and ``OpenSSL.crypto.loads_pkcs12``.
117
118Changes:
119^^^^^^^^
120
121- Added a new optional ``chain`` parameter to ``OpenSSL.crypto.X509StoreContext()``
122  where additional untrusted certificates can be specified to help chain building.
123  `#948 <https://github.com/pyca/pyopenssl/pull/948>`_
124- Added ``OpenSSL.crypto.X509Store.load_locations`` to set trusted
125  certificate file bundles and/or directories for verification.
126  `#943 <https://github.com/pyca/pyopenssl/pull/943>`_
127- Added ``Context.set_keylog_callback`` to log key material.
128  `#910 <https://github.com/pyca/pyopenssl/pull/910>`_
129- Added ``OpenSSL.SSL.Connection.get_verified_chain`` to retrieve the
130  verified certificate chain of the peer.
131  `#894 <https://github.com/pyca/pyopenssl/pull/894>`_.
132- Make verification callback optional in ``Context.set_verify``.
133  If omitted, OpenSSL's default verification is used.
134  `#933 <https://github.com/pyca/pyopenssl/pull/933>`_
135- Fixed a bug that could truncate or cause a zero-length key error due to a
136  null byte in private key passphrase in ``OpenSSL.crypto.load_privatekey``
137  and ``OpenSSL.crypto.dump_privatekey``.
138  `#947 <https://github.com/pyca/pyopenssl/pull/947>`_
139
14019.1.0 (2019-11-18)
141-------------------
142
143
144Backward-incompatible changes:
145^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
146
147- Removed deprecated ``ContextType``, ``ConnectionType``, ``PKeyType``, ``X509NameType``, ``X509ReqType``, ``X509Type``, ``X509StoreType``, ``CRLType``, ``PKCS7Type``, ``PKCS12Type``, and ``NetscapeSPKIType`` aliases.
148  Use the classes without the ``Type`` suffix instead.
149  `#814 <https://github.com/pyca/pyopenssl/pull/814>`_
150- The minimum ``cryptography`` version is now 2.8 due to issues on macOS with a transitive dependency.
151  `#875 <https://github.com/pyca/pyopenssl/pull/875>`_
152
153Deprecations:
154^^^^^^^^^^^^^
155
156- Deprecated ``OpenSSL.SSL.Context.set_npn_advertise_callback``, ``OpenSSL.SSL.Context.set_npn_select_callback``, and ``OpenSSL.SSL.Connection.get_next_proto_negotiated``.
157  ALPN should be used instead.
158  `#820 <https://github.com/pyca/pyopenssl/pull/820>`_
159
160
161Changes:
162^^^^^^^^
163
164- Support ``bytearray`` in ``SSL.Connection.send()`` by using cffi's from_buffer.
165  `#852 <https://github.com/pyca/pyopenssl/pull/852>`_
166- The ``OpenSSL.SSL.Context.set_alpn_select_callback`` can return a new ``NO_OVERLAPPING_PROTOCOLS`` sentinel value
167  to allow a TLS handshake to complete without an application protocol.
168
169`Full changelog <https://pyopenssl.org/en/stable/changelog.html>`_.
170
171
172
173