From c135fa424e768b78fae6ca997d8fe77a0d42447e Mon Sep 17 00:00:00 2001 From: Antoine Pitrou Date: Sun, 19 Feb 2012 21:22:39 +0100 Subject: [PATCH] Fix last remaining build issues of _ssl under old OpenSSLs. Patch by Vinay. --- Lib/test/test_ssl.py | 3 ++- Modules/_ssl.c | 5 +++++ 2 files changed, 7 insertions(+), 1 deletion(-) diff --git a/Lib/test/test_ssl.py b/Lib/test/test_ssl.py index 33f06d6cab8..c6ce07545cd 100644 --- a/Lib/test/test_ssl.py +++ b/Lib/test/test_ssl.py @@ -102,7 +102,8 @@ class BasicSocketTests(unittest.TestCase): ssl.CERT_REQUIRED ssl.OP_CIPHER_SERVER_PREFERENCE ssl.OP_SINGLE_DH_USE - ssl.OP_SINGLE_ECDH_USE + if ssl.HAS_ECDH: + ssl.OP_SINGLE_ECDH_USE if ssl.OPENSSL_VERSION_INFO >= (1, 0): ssl.OP_NO_COMPRESSION self.assertIn(ssl.HAS_SNI, {True, False}) diff --git a/Modules/_ssl.c b/Modules/_ssl.c index 8225e68f1d4..690d0be647c 100644 --- a/Modules/_ssl.c +++ b/Modules/_ssl.c @@ -150,6 +150,11 @@ static unsigned int _ssl_locks_count = 0; # define OPENSSL_NO_ECDH #endif +/* compression support got added to OpenSSL in 0.9.8 */ +#if OPENSSL_VERSION_NUMBER < 0x0090800fL && !defined(OPENSSL_NO_COMP) +# define OPENSSL_NO_COMP +#endif + typedef struct { PyObject_HEAD