summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorBenjamin Peterson <benjamin@python.org>2015-11-14 15:14:42 -0800
committerBenjamin Peterson <benjamin@python.org>2015-11-14 15:14:42 -0800
commitfcc2e71e99edb668cad539dc8fa9f259d0b389b6 (patch)
treeab5c934afb2df480e5a1bb949974ace99a42ab09
parent7e2b870b8593233306594237cd5286c60ec7a1e1 (diff)
parent025a1fd9907bb439db9a812c78b8f18dbf4bad9e (diff)
downloadcpython-git-fcc2e71e99edb668cad539dc8fa9f259d0b389b6.tar.gz
merge 3.4 (#25578)
-rw-r--r--Misc/NEWS2
-rw-r--r--Modules/_ssl.c7
2 files changed, 7 insertions, 2 deletions
diff --git a/Misc/NEWS b/Misc/NEWS
index 102f64d973..f0ade032ac 100644
--- a/Misc/NEWS
+++ b/Misc/NEWS
@@ -245,6 +245,8 @@ Library
- Issue #24881: Fixed setting binary mode in Python implementation of FileIO
on Windows and Cygwin. Patch from Akira Li.
+- Issue #25578: Fix (another) memory leak in SSLSocket.getpeercer().
+
- Issue #25530: Disable the vulnerable SSLv3 protocol by default when creating
ssl.SSLContext.
diff --git a/Modules/_ssl.c b/Modules/_ssl.c
index 784040d651..67402fe0a4 100644
--- a/Modules/_ssl.c
+++ b/Modules/_ssl.c
@@ -1017,7 +1017,10 @@ _get_aia_uri(X509 *certificate, int nid) {
AUTHORITY_INFO_ACCESS *info;
info = X509_get_ext_d2i(certificate, NID_info_access, NULL, NULL);
- if ((info == NULL) || (sk_ACCESS_DESCRIPTION_num(info) == 0)) {
+ if (info == NULL)
+ return Py_None;
+ if (sk_ACCESS_DESCRIPTION_num(info) == 0) {
+ AUTHORITY_INFO_ACCESS_free(info);
return Py_None;
}
@@ -3967,7 +3970,7 @@ _ssl_get_default_verify_paths_impl(PyModuleDef *module)
else if ((target = PyUnicode_DecodeFSDefault(tmp)) == NULL) { \
target = PyBytes_FromString(tmp); } \
if (!target) goto error; \
- }
+ }
CONVERT(X509_get_default_cert_file_env(), ofile_env);
CONVERT(X509_get_default_cert_file(), ofile);