From: Giampaolo RodolĂ  Date: Wed, 1 Sep 2010 19:28:49 +0000 (+0000) Subject: Issue #9693 - msg 115273: attempt to fix ssl module failures on certain OpenSSL versi... X-Git-Tag: v3.2a2~91 X-Git-Url: https://granicus.if.org/sourcecode?a=commitdiff_plain;h=e0f9863a613b7e00794475bf4286c1dcf688ac26;p=python Issue #9693 - msg 115273: attempt to fix ssl module failures on certain OpenSSL versions by calling ERR_clear_error() before raising IOError --- 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 {