diff options
author | Sandor Nemes <sandor.nemes@gmail.com> | 2016-01-08 15:46:59 +0100 |
---|---|---|
committer | Sandor Nemes <sandor.nemes@gmail.com> | 2016-01-08 18:55:13 +0100 |
commit | fe77dd35c67a0dfbd3004fefe97c689f8cfd3291 (patch) | |
tree | bec6c002a4db4ac019d9dfe5cf735db3375378c4 /libmproxy/protocol/base.py | |
parent | 11215e46ecc5c3a4272893d4b06f71920ff126f5 (diff) | |
download | mitmproxy-fe77dd35c67a0dfbd3004fefe97c689f8cfd3291.tar.gz mitmproxy-fe77dd35c67a0dfbd3004fefe97c689f8cfd3291.tar.bz2 mitmproxy-fe77dd35c67a0dfbd3004fefe97c689f8cfd3291.zip |
Fixed a problem with the bind address not being used as the source address on outgoing TCP packets
Diffstat (limited to 'libmproxy/protocol/base.py')
-rw-r--r-- | libmproxy/protocol/base.py | 7 |
1 files changed, 4 insertions, 3 deletions
diff --git a/libmproxy/protocol/base.py b/libmproxy/protocol/base.py index af6b1c3b..8a1bea91 100644 --- a/libmproxy/protocol/base.py +++ b/libmproxy/protocol/base.py @@ -109,9 +109,9 @@ class ServerConnectionMixin(object): self.disconnect() """ - def __init__(self, server_address=None): + def __init__(self, server_address=None, source_address=None): super(ServerConnectionMixin, self).__init__() - self.server_conn = ServerConnection(server_address) + self.server_conn = ServerConnection(server_address, source_address) self.__check_self_connect() def __check_self_connect(self): @@ -157,10 +157,11 @@ class ServerConnectionMixin(object): """ self.log("serverdisconnect", "debug", [repr(self.server_conn.address)]) address = self.server_conn.address + source_address = self.server_conn.source_address()[0] self.server_conn.finish() self.server_conn.close() self.channel.tell("serverdisconnect", self.server_conn) - self.server_conn = ServerConnection(address) + self.server_conn = ServerConnection(address, source_address) def connect(self): """ |