diff --git a/w3af/core/data/url/handlers/keepalive/connections.py b/w3af/core/data/url/handlers/keepalive/connections.py index f874a9c04f..146367b7a7 100644 --- a/w3af/core/data/url/handlers/keepalive/connections.py +++ b/w3af/core/data/url/handlers/keepalive/connections.py @@ -33,7 +33,7 @@ from .utils import debug from w3af.core.controllers.exceptions import HTTPRequestException -from w3af.core.data.url.openssl.ssl_wrapper import wrap_socket +from w3af.core.data.url.openssl_wrapper.ssl_wrapper import wrap_socket class UniqueID(object): diff --git a/w3af/core/data/url/openssl/__init__.py b/w3af/core/data/url/openssl_wrapper/__init__.py similarity index 100% rename from w3af/core/data/url/openssl/__init__.py rename to w3af/core/data/url/openssl_wrapper/__init__.py diff --git a/w3af/core/data/url/openssl/ssl_wrapper.py b/w3af/core/data/url/openssl_wrapper/ssl_wrapper.py similarity index 99% rename from w3af/core/data/url/openssl/ssl_wrapper.py rename to w3af/core/data/url/openssl_wrapper/ssl_wrapper.py index f1cbde8324..d8f2cdfc0a 100644 --- a/w3af/core/data/url/openssl/ssl_wrapper.py +++ b/w3af/core/data/url/openssl_wrapper/ssl_wrapper.py @@ -18,6 +18,7 @@ import socket import select import OpenSSL +from OpenSSL.SSL import SysCallError from ndg.httpsclient.subj_alt_name import SubjectAltName from pyasn1.codec.der.decoder import decode as der_decoder @@ -122,7 +123,7 @@ def close(self): def recv(self, *args, **kwargs): try: data = self.ssl_conn.recv(*args, **kwargs) - except OpenSSL.SSL.ZeroReturnError: + except (OpenSSL.SSL.ZeroReturnError, SysCallError): # empty string signalling that the other side has closed the # connection or that some kind of error happen and no more reads # should be done on this socket diff --git a/w3af/core/data/url/openssl/tests/__init__.py b/w3af/core/data/url/openssl_wrapper/tests/__init__.py similarity index 100% rename from w3af/core/data/url/openssl/tests/__init__.py rename to w3af/core/data/url/openssl_wrapper/tests/__init__.py diff --git a/w3af/core/data/url/openssl/tests/test_ssl_wrapper.py b/w3af/core/data/url/openssl_wrapper/tests/test_ssl_wrapper.py similarity index 95% rename from w3af/core/data/url/openssl/tests/test_ssl_wrapper.py rename to w3af/core/data/url/openssl_wrapper/tests/test_ssl_wrapper.py index 14589b7fcf..763872d120 100644 --- a/w3af/core/data/url/openssl/tests/test_ssl_wrapper.py +++ b/w3af/core/data/url/openssl_wrapper/tests/test_ssl_wrapper.py @@ -23,7 +23,7 @@ import OpenSSL import ssl -from w3af.core.data.url.openssl.ssl_wrapper import OpenSSLReformattedError +from w3af.core.data.url.openssl_wrapper.ssl_wrapper import OpenSSLReformattedError class TestSSLError(unittest.TestCase): diff --git a/w3af/plugins/audit/ssl_certificate.py b/w3af/plugins/audit/ssl_certificate.py index ef1154f1e8..c68b4f40aa 100644 --- a/w3af/plugins/audit/ssl_certificate.py +++ b/w3af/plugins/audit/ssl_certificate.py @@ -37,7 +37,7 @@ from w3af.core.data.options.option_types import INPUT_FILE from w3af.core.data.options.option_list import OptionList from w3af.core.data.parsers.doc.url import URL -from w3af.core.data.url.openssl.ssl_wrapper import wrap_socket +from w3af.core.data.url.openssl_wrapper.ssl_wrapper import wrap_socket from w3af.core.data.kb.info import Info from w3af.core.data.kb.vuln import Vuln