diff -r f0297263a1e8 Lib/ssl.py --- a/Lib/ssl.py Fri Dec 12 12:27:08 2014 +0100 +++ b/Lib/ssl.py Fri Dec 12 12:28:42 2014 +0100 @@ -922,11 +922,16 @@ def PEM_cert_to_DER_cert(pem_cert_string d = pem_cert_string.strip()[len(PEM_HEADER):-len(PEM_FOOTER)] return base64.decodebytes(d.encode('ASCII', 'strict')) -def get_server_certificate(addr, ssl_version=PROTOCOL_SSLv3, ca_certs=None): +def get_server_certificate(addr, ssl_version=None, ca_certs=None): """Retrieve the certificate from the server at the specified address, and return it as a PEM-encoded string. If 'ca_certs' is specified, validate the server cert against it. If 'ssl_version' is specified, use it in the connection attempt.""" + if ssl_version is None: + try: + ssl_version = PROTOCOL_SSLv3 + except NameError: + ssl_version = PROTOCOL_SSLv23 host, port = addr if ca_certs is not None: