diff options
Diffstat (limited to 'docs/hazmat/bindings')
| -rw-r--r-- | docs/hazmat/bindings/commoncrypto.rst | 30 | ||||
| -rw-r--r-- | docs/hazmat/bindings/index.rst | 1 | ||||
| -rw-r--r-- | docs/hazmat/bindings/openssl.rst | 26 |
3 files changed, 12 insertions, 45 deletions
diff --git a/docs/hazmat/bindings/commoncrypto.rst b/docs/hazmat/bindings/commoncrypto.rst deleted file mode 100644 index 4f58a6d3..00000000 --- a/docs/hazmat/bindings/commoncrypto.rst +++ /dev/null @@ -1,30 +0,0 @@ -.. hazmat:: - -CommonCrypto binding -==================== - -.. currentmodule:: cryptography.hazmat.bindings.commoncrypto.binding - -.. versionadded:: 0.2 - -These are `CFFI`_ bindings to the `CommonCrypto`_ C library. It is only -available on Mac OS X versions 10.8 and above. - -.. class:: cryptography.hazmat.bindings.commoncrypto.binding.Binding() - - This is the exposed API for the CommonCrypto bindings. It has two public - attributes: - - .. attribute:: ffi - - This is a ``cffi.FFI`` instance. It can be used to allocate and - otherwise manipulate CommonCrypto structures. - - .. attribute:: lib - - This is a ``cffi`` library. It can be used to call CommonCrypto - functions, and access constants. - - -.. _`CFFI`: https://cffi.readthedocs.org/ -.. _`CommonCrypto`: https://developer.apple.com/library/mac/documentation/Darwin/Reference/ManPages/man3/Common%20Crypto.3cc.html diff --git a/docs/hazmat/bindings/index.rst b/docs/hazmat/bindings/index.rst index 8075be14..655f4620 100644 --- a/docs/hazmat/bindings/index.rst +++ b/docs/hazmat/bindings/index.rst @@ -20,4 +20,3 @@ Individual bindings :maxdepth: 1 openssl - commoncrypto diff --git a/docs/hazmat/bindings/openssl.rst b/docs/hazmat/bindings/openssl.rst index 446c450c..bc7ec2d9 100644 --- a/docs/hazmat/bindings/openssl.rst +++ b/docs/hazmat/bindings/openssl.rst @@ -6,8 +6,7 @@ OpenSSL binding .. currentmodule:: cryptography.hazmat.bindings.openssl.binding These are `CFFI`_ bindings to the `OpenSSL`_ C library. Cryptography supports -version ``0.9.8e`` (present in Red Hat Enterprise Linux 5) and greater. Earlier -versions may work but are **not tested or supported**. +OpenSSL version 1.0.2 and greater. .. class:: cryptography.hazmat.bindings.openssl.binding.Binding() @@ -34,16 +33,15 @@ versions may work but are **not tested or supported**. Threading --------- -``cryptography`` enables OpenSSLs `thread safety facilities`_ in two different -ways depending on the configuration of your system. Normally the locking -callbacks provided by your Python implementation specifically for OpenSSL will -be used. However if you have linked ``cryptography`` to a different version of -OpenSSL than that used by your Python implementation we enable an alternative -locking callback. This version is implemented in Python and so may result in -lower performance in some situations. In particular parallelism is reduced -because it has to acquire the GIL whenever any lock operations occur within -OpenSSL. - -.. _`CFFI`: https://cffi.readthedocs.org/ +``cryptography`` enables OpenSSLs `thread safety facilities`_ in several +different ways depending on the configuration of your system. For users on +OpenSSL 1.1.0 or newer (including anyone who uses a binary wheel) the OpenSSL +internal locking callbacks are automatically used. Otherwise, we first attempt +to use the callbacks provided by your Python implementation specifically for +OpenSSL. This will work in every case except where ``cryptography`` is linked +against a different version of OpenSSL than the one used by your Python +implementation. For this final case we have a C-based locking callback. + +.. _`CFFI`: https://cffi.readthedocs.io .. _`OpenSSL`: https://www.openssl.org/ -.. _`thread safety facilities`: https://www.openssl.org/docs/crypto/threads.html +.. _`thread safety facilities`: https://www.openssl.org/docs/man1.0.2/man3/CRYPTO_THREADID_set_callback.html |
