diff options
author | Christian Heimes <christian@cheimes.de> | 2013-11-23 21:43:47 (GMT) |
---|---|---|
committer | Christian Heimes <christian@cheimes.de> | 2013-11-23 21:43:47 (GMT) |
commit | 67986f94311ffb46fe5b3efce74d749029041b73 (patch) | |
tree | 70aeabba17581022cb3dfcd1c9a59a284a0c1bca /Lib/urllib/request.py | |
parent | 32eddc1bbc47479a3639b9191ffc82a52903c5f4 (diff) | |
download | cpython-67986f94311ffb46fe5b3efce74d749029041b73.zip cpython-67986f94311ffb46fe5b3efce74d749029041b73.tar.gz cpython-67986f94311ffb46fe5b3efce74d749029041b73.tar.bz2 |
Issue #19735: Implement private function ssl._create_stdlib_context() to
create SSLContext objects in Python's stdlib module. It provides a single
configuration point and makes use of SSLContext.load_default_certs().
Diffstat (limited to 'Lib/urllib/request.py')
-rw-r--r-- | Lib/urllib/request.py | 10 |
1 files changed, 3 insertions, 7 deletions
diff --git a/Lib/urllib/request.py b/Lib/urllib/request.py index bceb329..5995cbe 100644 --- a/Lib/urllib/request.py +++ b/Lib/urllib/request.py @@ -141,13 +141,9 @@ def urlopen(url, data=None, timeout=socket._GLOBAL_DEFAULT_TIMEOUT, if cafile or capath or cadefault: if not _have_ssl: raise ValueError('SSL support not available') - context = ssl.SSLContext(ssl.PROTOCOL_SSLv23) - context.options |= ssl.OP_NO_SSLv2 - context.verify_mode = ssl.CERT_REQUIRED - if cafile or capath: - context.load_verify_locations(cafile, capath) - else: - context.set_default_verify_paths() + context = ssl._create_stdlib_context(cert_reqs=ssl.CERT_REQUIRED, + cafile=cafile, + capath=capath) https_handler = HTTPSHandler(context=context, check_hostname=True) opener = build_opener(https_handler) elif _opener is None: |