From: David Benjamin Date: Fri, 22 Jul 2022 00:38:15 +0000 (-0700) Subject: Fix typo in PROTOCOL_TO_TLS_VERSION in test_ssl (GH-95119) X-Git-Tag: v3.12.0a1~889 X-Git-Url: http://git.ipfire.org/gitweb.cgi?a=commitdiff_plain;h=934b25dcc492dcbca4da9d63d0d71dc940fc0375;p=thirdparty%2FPython%2Fcpython.git Fix typo in PROTOCOL_TO_TLS_VERSION in test_ssl (GH-95119) This appears to be a typo. It causes try_protocol_combo to try to turn on SSL 3.0 when testing PROTOCOL_SSLv23 (aka PROTOCOL_TLS), which doesn't make any sense. Fix it to be PROTOCOL_SSLv3. Without this, try_protocol_combo is actually setting context.minimum_version to SSLv3 when called as try_protocol_combo(ssl.PROTOCOL_TLS, ssl.PROTOCOL_TLS, True) One would think this causes a no-ssl3 OpenSSL build to fail, but OpenSSL forgot to make SSL_CTX_set_min_proto_version(SSL3_VERSION) does not notice no-ssl3, so this typo has gone undetected. But we should still fix the typo because, presumably, a future version of OpenSSL will remove SSL 3.0 and do so more thoroughly, at which point this will break. --- diff --git a/Lib/test/test_ssl.py b/Lib/test/test_ssl.py index 65f5d4a6d709..0d0d14ac0026 100644 --- a/Lib/test/test_ssl.py +++ b/Lib/test/test_ssl.py @@ -47,7 +47,7 @@ PY_SSL_DEFAULT_CIPHERS = sysconfig.get_config_var('PY_SSL_DEFAULT_CIPHERS') PROTOCOL_TO_TLS_VERSION = {} for proto, ver in ( - ("PROTOCOL_SSLv23", "SSLv3"), + ("PROTOCOL_SSLv3", "SSLv3"), ("PROTOCOL_TLSv1", "TLSv1"), ("PROTOCOL_TLSv1_1", "TLSv1_1"), ):