From 843c16215c2bd88ea80ee32acf5eb2c992c0b0da Mon Sep 17 00:00:00 2001 From: Lonami Exo Date: Thu, 22 Jun 2017 19:21:33 +0200 Subject: [PATCH] Add timeout parameter on TcpClient.connect() too --- telethon/extensions/tcp_client.py | 7 +++++-- telethon/network/tcp_transport.py | 3 ++- 2 files changed, 7 insertions(+), 3 deletions(-) diff --git a/telethon/extensions/tcp_client.py b/telethon/extensions/tcp_client.py index 089066e9..3600ac88 100644 --- a/telethon/extensions/tcp_client.py +++ b/telethon/extensions/tcp_client.py @@ -30,9 +30,12 @@ class TcpClient: else: # tuple, list, etc. self._socket.set_proxy(*self._proxy) - def connect(self, ip, port): - """Connects to the specified IP and port number""" + def connect(self, ip, port, timeout): + """Connects to the specified IP and port number. + 'timeout' must be given in seconds + """ if not self.connected: + self._socket.settimeout(timeout) self._socket.connect((ip, port)) self._socket.setblocking(False) self.connected = True diff --git a/telethon/network/tcp_transport.py b/telethon/network/tcp_transport.py index 702d2633..76b6b6b9 100644 --- a/telethon/network/tcp_transport.py +++ b/telethon/network/tcp_transport.py @@ -18,7 +18,8 @@ class TcpTransport: def connect(self): """Connects to the specified IP address and port""" self.send_counter = 0 - self.tcp_client.connect(self.ip, self.port) + self.tcp_client.connect(self.ip, self.port, + timeout=round(self.timeout.seconds)) def is_connected(self): return self.tcp_client.connected