bpo-41252: Fix incorrect refcounting in _ssl.c's _servername_callback() (GH-21407)
(cherry picked from commit ee96f32ca2
)
Co-authored-by: Zackery Spytz <zspytz@gmail.com>
This commit is contained in:
parent
c1c5034593
commit
54babbe976
|
@ -0,0 +1 @@
|
|||
Fix incorrect refcounting in _ssl.c's ``_servername_callback()``.
|
|
@ -4548,11 +4548,12 @@ _servername_callback(SSL *s, int *al, void *args)
|
|||
* back into a str object, but still as an A-label (bpo-28414)
|
||||
*/
|
||||
servername_str = PyUnicode_FromEncodedObject(servername_bytes, "ascii", NULL);
|
||||
Py_DECREF(servername_bytes);
|
||||
if (servername_str == NULL) {
|
||||
PyErr_WriteUnraisable(servername_bytes);
|
||||
Py_DECREF(servername_bytes);
|
||||
goto error;
|
||||
}
|
||||
Py_DECREF(servername_bytes);
|
||||
result = PyObject_CallFunctionObjArgs(
|
||||
ssl_ctx->set_sni_cb, ssl_socket, servername_str,
|
||||
ssl_ctx, NULL);
|
||||
|
|
Loading…
Reference in New Issue