From: Victor Stinner Date: Mon, 12 Sep 2016 10:00:23 +0000 (+0200) Subject: Issue #27866: Fix refleak in cipher_to_dict() X-Git-Tag: v3.6.0b1~13 X-Git-Url: http://git.ipfire.org/gitweb.cgi?a=commitdiff_plain;h=410b9887e14f6b15c00c10e57537297c3abe45dd;p=thirdparty%2FPython%2Fcpython.git Issue #27866: Fix refleak in cipher_to_dict() --- diff --git a/Modules/_ssl.c b/Modules/_ssl.c index 736fc1d81046..b32d1c1756e1 100644 --- a/Modules/_ssl.c +++ b/Modules/_ssl.c @@ -1587,12 +1587,6 @@ cipher_to_dict(const SSL_CIPHER *cipher) int aead, nid; const char *skcipher = NULL, *digest = NULL, *kx = NULL, *auth = NULL; #endif - PyObject *retval; - - retval = PyDict_New(); - if (retval == NULL) { - goto error; - } /* can be NULL */ cipher_name = SSL_CIPHER_get_name(cipher); @@ -1616,7 +1610,7 @@ cipher_to_dict(const SSL_CIPHER *cipher) auth = nid != NID_undef ? OBJ_nid2ln(nid) : NULL; #endif - retval = Py_BuildValue( + return Py_BuildValue( "{sksssssssisi" #if OPENSSL_VERSION_1_1 "sOssssssss" @@ -1636,11 +1630,6 @@ cipher_to_dict(const SSL_CIPHER *cipher) "auth", auth #endif ); - return retval; - - error: - Py_XDECREF(retval); - return NULL; } #endif