From 1cbc794229d368e78eaa5157468ac59132b0fbab Mon Sep 17 00:00:00 2001 From: ThomasV Date: Wed, 25 Oct 2017 17:43:30 +0200 Subject: [PATCH] interface: catch py3 exceptions --- lib/interface.py | 9 +++++---- 1 file changed, 5 insertions(+), 4 deletions(-) diff --git a/lib/interface.py b/lib/interface.py index df1960b5..e269e957 100644 --- a/lib/interface.py +++ b/lib/interface.py @@ -135,11 +135,12 @@ class TcpConnection(threading.Thread, util.PrintError): # try with CA first try: s = ssl.wrap_socket(s, ssl_version=ssl.PROTOCOL_TLSv1_1, cert_reqs=ssl.CERT_REQUIRED, ca_certs=ca_path, do_handshake_on_connect=True) - except socket.timeout: - return except ssl.SSLError as e: print_error(e) s = None + except: + return + if s and self.check_host_name(s.getpeercert(), self.host): self.print_error("SSL certificate signed by CA") return s @@ -150,11 +151,11 @@ class TcpConnection(threading.Thread, util.PrintError): return try: s = ssl.wrap_socket(s, ssl_version=ssl.PROTOCOL_TLSv1_1, cert_reqs=ssl.CERT_NONE, ca_certs=None) - except socket.timeout: - return except ssl.SSLError as e: self.print_error("SSL error retrieving SSL certificate:", e) return + except: + return dercert = s.getpeercert(True) s.close()