https://github.com/python/cpython/commit/a64a1c920660b0c1e4dd5a9573004cd527e15184
commit: a64a1c920660b0c1e4dd5a9573004cd527e15184
branch: main
author: sobolevn <m...@sobolevn.me>
committer: sobolevn <m...@sobolevn.me>
date: 2024-10-29T12:03:18+03:00
summary:

gh-126106: Fix `NULL` possible derefrence in `Modules/_ssl.c` (#126111)

Co-authored-by: Bénédikt Tran <10796600+picn...@users.noreply.github.com>

files:
A Misc/NEWS.d/next/Library/2024-10-29-10-58-52.gh-issue-126106.rlF798.rst
M Modules/_ssl.c

diff --git 
a/Misc/NEWS.d/next/Library/2024-10-29-10-58-52.gh-issue-126106.rlF798.rst 
b/Misc/NEWS.d/next/Library/2024-10-29-10-58-52.gh-issue-126106.rlF798.rst
new file mode 100644
index 00000000000000..de989007b4c35a
--- /dev/null
+++ b/Misc/NEWS.d/next/Library/2024-10-29-10-58-52.gh-issue-126106.rlF798.rst
@@ -0,0 +1 @@
+Fixes a possible ``NULL`` pointer dereference in :mod:`ssl`.
diff --git a/Modules/_ssl.c b/Modules/_ssl.c
index 62a94314512dd9..54bac28e5beccf 100644
--- a/Modules/_ssl.c
+++ b/Modules/_ssl.c
@@ -5424,14 +5424,14 @@ PySSLSession_dealloc(PySSLSession *self)
 static PyObject *
 PySSLSession_richcompare(PyObject *left, PyObject *right, int op)
 {
-    int result;
-    PyTypeObject *sesstype = 
((PySSLSession*)left)->ctx->state->PySSLSession_Type;
-
     if (left == NULL || right == NULL) {
         PyErr_BadInternalCall();
         return NULL;
     }
 
+    int result;
+    PyTypeObject *sesstype = 
((PySSLSession*)left)->ctx->state->PySSLSession_Type;
+
     if (!Py_IS_TYPE(left, sesstype) || !Py_IS_TYPE(right, sesstype)) {
         Py_RETURN_NOTIMPLEMENTED;
     }

_______________________________________________
Python-checkins mailing list -- python-checkins@python.org
To unsubscribe send an email to python-checkins-le...@python.org
https://mail.python.org/mailman3/lists/python-checkins.python.org/
Member address: arch...@mail-archive.com

Reply via email to