mirror of
https://github.com/python/cpython.git
synced 2026-08-03 13:26:41 +08:00
gh-144833: Fix use-after-free in SSL module when SSL_new() fails (GH-144843) In newPySSLSocket(), when SSL_new() returns NULL, Py_DECREF(self) was called before _setSSLError(get_state_ctx(self), ...), causing a use-after-free. Additionally, get_state_ctx() was called with self (PySSLSocket*) instead of sslctx (PySSLContext*), which is a type confusion bug. Fix by calling _setSSLError() before Py_DECREF() and using sslctx instead of self for get_state_ctx(). (cherry picked from commit c91638ca0671b8038831f963ed44e66cdda006a2) Co-authored-by: Ramin Farajpour Cami <ramin.blackhat@gmail.com>
Source files for standard library extension modules, and former extension modules that are now builtin modules.