Skip to content

Commit

Permalink
fix connections ref
Browse files Browse the repository at this point in the history
  • Loading branch information
breakwa11 committed Jul 3, 2017
1 parent a629d1b commit 339c1cc
Showing 1 changed file with 5 additions and 2 deletions.
7 changes: 5 additions & 2 deletions shadowsocks/tcprelay.py
Original file line number Diff line number Diff line change
Expand Up @@ -138,6 +138,7 @@ def __init__(self, server, fd_to_handlers, loop, local_sock, config,
self._remote_udp = False
self._config = config
self._dns_resolver = dns_resolver
self._add_ref = 0
if not self._create_encryptor(config):
return

Expand Down Expand Up @@ -217,6 +218,7 @@ def __init__(self, server, fd_to_handlers, loop, local_sock, config,
self._update_activity()
self._server.add_connection(1)
self._server.stat_add(self._client_address[0], 1)
self._add_ref = 1
self.speed_tester_u = SpeedTester(config.get("speed_limit_per_con", 0))
self.speed_tester_d = SpeedTester(config.get("speed_limit_per_con", 0))
self._recv_u_max_size = BUF_SIZE
Expand Down Expand Up @@ -1159,8 +1161,9 @@ def destroy(self):
self._encryptor = None
self._dns_resolver.remove_callback(self._handle_dns_resolved)
self._server.remove_handler(self)
self._server.add_connection(-1)
self._server.stat_add(self._client_address[0], -1)
if self._add_ref > 0:
self._server.add_connection(-1)
self._server.stat_add(self._client_address[0], -1)

class TCPRelay(object):
def __init__(self, config, dns_resolver, is_local, stat_callback=None, stat_counter=None):
Expand Down

0 comments on commit 339c1cc

Please sign in to comment.