check decode remote_addr
This commit is contained in:
parent
3f6f16e4d6
commit
9538afebff
1 changed files with 7 additions and 8 deletions
|
@ -354,7 +354,7 @@ class TCPRelayHandler(object):
|
||||||
if type(host_list) == list:
|
if type(host_list) == list:
|
||||||
host_post = common.to_str(host_list[((hash_code & 0xffffffff) + addr) % len(host_list)])
|
host_post = common.to_str(host_list[((hash_code & 0xffffffff) + addr) % len(host_list)])
|
||||||
else:
|
else:
|
||||||
host_post = host_list
|
host_post = common.to_str(host_list)
|
||||||
items = host_post.rsplit(':', 1)
|
items = host_post.rsplit(':', 1)
|
||||||
if len(items) > 1:
|
if len(items) > 1:
|
||||||
try:
|
try:
|
||||||
|
@ -464,20 +464,19 @@ class TCPRelayHandler(object):
|
||||||
if data is None:
|
if data is None:
|
||||||
data = self._handel_protocol_error(self._client_address, ogn_data)
|
data = self._handel_protocol_error(self._client_address, ogn_data)
|
||||||
header_result = parse_header(data)
|
header_result = parse_header(data)
|
||||||
|
if header_result is not None:
|
||||||
|
try:
|
||||||
|
common.to_str(remote_addr)
|
||||||
|
except Exception as e:
|
||||||
|
header_result = None
|
||||||
if header_result is None:
|
if header_result is None:
|
||||||
data = self._handel_protocol_error(self._client_address, ogn_data)
|
data = self._handel_protocol_error(self._client_address, ogn_data)
|
||||||
header_result = parse_header(data)
|
header_result = parse_header(data)
|
||||||
connecttype, remote_addr, remote_port, header_length = header_result
|
connecttype, remote_addr, remote_port, header_length = header_result
|
||||||
try:
|
|
||||||
common.connect_log('%s connecting %s:%d from %s:%d' %
|
common.connect_log('%s connecting %s:%d from %s:%d' %
|
||||||
((connecttype == 0) and 'TCP' or 'UDP',
|
((connecttype == 0) and 'TCP' or 'UDP',
|
||||||
common.to_str(remote_addr), remote_port,
|
common.to_str(remote_addr), remote_port,
|
||||||
self._client_address[0], self._client_address[1]))
|
self._client_address[0], self._client_address[1]))
|
||||||
except Exception as e:
|
|
||||||
common.connect_log('%s connecting %s:%d from %s:%d' %
|
|
||||||
((connecttype == 0) and 'TCP' or 'UDP',
|
|
||||||
binascii.hexlify(remote_addr), remote_port,
|
|
||||||
self._client_address[0], self._client_address[1]))
|
|
||||||
self._remote_address = (common.to_str(remote_addr), remote_port)
|
self._remote_address = (common.to_str(remote_addr), remote_port)
|
||||||
self._remote_udp = (connecttype != 0)
|
self._remote_udp = (connecttype != 0)
|
||||||
# pause reading
|
# pause reading
|
||||||
|
|
Loading…
Add table
Reference in a new issue