From e0f9863a613b7e00794475bf4286c1dcf688ac26 Mon Sep 17 00:00:00 2001 From: =?utf8?q?Giampaolo=20Rodol=C3=A0?= Date: Wed, 1 Sep 2010 19:28:49 +0000 Subject: [PATCH] Issue #9693 - msg 115273: attempt to fix ssl module failures on certain OpenSSL versions by calling ERR_clear_error() before raising IOError --- Modules/_ssl.c | 3 +++ 1 file changed, 3 insertions(+) diff --git a/Modules/_ssl.c b/Modules/_ssl.c index 0008691181..7874c24210 100644 --- a/Modules/_ssl.c +++ b/Modules/_ssl.c @@ -1603,6 +1603,7 @@ load_cert_chain(PySSLContext *self, PyObject *args, PyObject *kwds) PySSL_END_ALLOW_THREADS if (r != 1) { if (errno != 0) { + ERR_clear_error(); PyErr_SetFromErrno(PyExc_IOError); } else { @@ -1619,6 +1620,7 @@ load_cert_chain(PySSLContext *self, PyObject *args, PyObject *kwds) Py_XDECREF(certfile_bytes); if (r != 1) { if (errno != 0) { + ERR_clear_error(); PyErr_SetFromErrno(PyExc_IOError); } else { @@ -1686,6 +1688,7 @@ load_verify_locations(PySSLContext *self, PyObject *args, PyObject *kwds) Py_XDECREF(capath_bytes); if (r != 1) { if (errno != 0) { + ERR_clear_error(); PyErr_SetFromErrno(PyExc_IOError); } else { -- 2.40.0