diff --git a/src/common/proxy65_manager.py b/src/common/proxy65_manager.py index 5f2a9f528edcb5a17a0e8ea021d095de1f0b3689..5145632db5eacc9bedd7b586b6fda5ec9ccff9f6 100644 --- a/src/common/proxy65_manager.py +++ b/src/common/proxy65_manager.py @@ -186,6 +186,9 @@ class HostTester(Socks5, IdleObject): def connect(self): ''' create the socket and plug it to the idlequeue ''' + if self.host is None: + self.on_failure() + return None self._sock = socket.socket(socket.AF_INET, socket.SOCK_STREAM) self._sock.setblocking(False) self.fd = self._sock.fileno() diff --git a/src/common/socks5.py b/src/common/socks5.py index 9039dab5473517671991ef78da4cd394e7275d05..6e472e1b8174500a375ed67ff207d75bea815e11 100644 --- a/src/common/socks5.py +++ b/src/common/socks5.py @@ -350,7 +350,10 @@ class SocksQueue: class Socks5: def __init__(self, idlequeue, host, port, initiator, target, sid): if host is not None: - self.host = socket.gethostbyname(host) + try: + self.host = socket.gethostbyname(host) + except socket.gaierror: + self.host = None self.idlequeue = idlequeue self.fd = -1 self.port = port