Issue #27866: Fix refleak in cipher_to_dict()
diff --git a/Modules/_ssl.c b/Modules/_ssl.c
index 736fc1d..b32d1c1 100644
--- a/Modules/_ssl.c
+++ b/Modules/_ssl.c
@@ -1587,12 +1587,6 @@
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 @@
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 @@
"auth", auth
#endif
);
- return retval;
-
- error:
- Py_XDECREF(retval);
- return NULL;
}
#endif