From 12c9f3a007608c483c21bb92d080477928aaf9e5 Mon Sep 17 00:00:00 2001 From: Alex Gaynor Date: Mon, 24 Nov 2014 08:26:18 -0600 Subject: Support compilation on platforms, such as debian expiremental, which are compiled without SSLv3 --- src/cryptography/hazmat/bindings/openssl/ssl.py | 16 ++++++++++++++++ 1 file changed, 16 insertions(+) diff --git a/src/cryptography/hazmat/bindings/openssl/ssl.py b/src/cryptography/hazmat/bindings/openssl/ssl.py index 3d6fc425..1aed28d5 100644 --- a/src/cryptography/hazmat/bindings/openssl/ssl.py +++ b/src/cryptography/hazmat/bindings/openssl/ssl.py @@ -15,6 +15,7 @@ TYPES = """ * Internally invented symbols to tell which versions of SSL/TLS are supported. */ static const long Cryptography_HAS_SSL2; +static const long Cryptography_HAS_SSL3_METHOD; static const long Cryptography_HAS_TLSv1_1; static const long Cryptography_HAS_TLSv1_2; static const long Cryptography_HAS_SECURE_RENEGOTIATION; @@ -384,6 +385,15 @@ SSL_METHOD* (*SSLv2_server_method)(void) = NULL; static const long Cryptography_HAS_SSL2 = 1; #endif +#ifdef OPENSSL_NO_SSL3_METHOD +static const long Cryptography_HAS_SSL3_METHOD = 0; +SSL_METHOD* (*SSLv3_method)(void) = NULL; +SSL_METHOD* (*SSLv3_client_method)(void) = NULL; +SSL_METHOD* (*SSLv3_server_method)(void) = NULL; +#else +static const long Cryptography_HAS_SSL3_METHOD = 1; +#endif + #ifdef SSL_CTRL_SET_TLSEXT_HOSTNAME static const long Cryptography_HAS_TLSEXT_HOSTNAME = 1; #else @@ -554,6 +564,12 @@ CONDITIONAL_NAMES = { "SSLv2_server_method", ], + "Cryptography_HAS_SSL3_METHOD": [ + "SSLv3_method", + "SSLv3_client_method", + "SSLv3_server_method", + ], + "Cryptography_HAS_TLSEXT_HOSTNAME": [ "SSL_set_tlsext_host_name", "SSL_get_servername", -- cgit v1.2.3