aboutsummaryrefslogtreecommitdiffstats
path: root/test
diff options
context:
space:
mode:
authorThomas Kriechbaumer <thomas@kriechbaumer.name>2017-12-13 09:45:40 +0100
committerThomas Kriechbaumer <thomas@kriechbaumer.name>2017-12-13 09:45:40 +0100
commit488ec6f3f1b413450facdd00422a67a5838cafef (patch)
tree79befd58b2c232be94b5596d4f05c713c3a541f7 /test
parent8e9194c2b4b8c1b82832cdab1b364f3300e2d3fd (diff)
downloadmitmproxy-488ec6f3f1b413450facdd00422a67a5838cafef.tar.gz
mitmproxy-488ec6f3f1b413450facdd00422a67a5838cafef.tar.bz2
mitmproxy-488ec6f3f1b413450facdd00422a67a5838cafef.zip
fix #2664
Diffstat (limited to 'test')
-rw-r--r--test/mitmproxy/net/test_tcp.py9
1 files changed, 8 insertions, 1 deletions
diff --git a/test/mitmproxy/net/test_tcp.py b/test/mitmproxy/net/test_tcp.py
index 3e27929d..e9084be4 100644
--- a/test/mitmproxy/net/test_tcp.py
+++ b/test/mitmproxy/net/test_tcp.py
@@ -1,4 +1,5 @@
from io import BytesIO
+import re
import queue
import time
import socket
@@ -95,7 +96,13 @@ class TestServerBind(tservers.ServerTestBase):
class handler(tcp.BaseHandler):
def handle(self):
- self.wfile.write(str(self.connection.getpeername()).encode())
+ # We may get an ipv4-mapped ipv6 address here, e.g. ::ffff:127.0.0.1.
+ # Those still appear as "127.0.0.1" in the table, so we need to strip the prefix.
+ peername = self.connection.getpeername()
+ address = re.sub("^::ffff:(?=\d+.\d+.\d+.\d+$)", "", peername[0])
+ port = peername[1]
+
+ self.wfile.write(str((address, port)).encode())
self.wfile.flush()
def test_bind(self):