diff options
author | Maximilian Hils <git@maximilianhils.com> | 2014-02-05 21:34:14 +0100 |
---|---|---|
committer | Maximilian Hils <git@maximilianhils.com> | 2014-02-05 21:34:14 +0100 |
commit | 7fc544bc7ff8fd610ba9db92c0d3b59a0b040b5b (patch) | |
tree | 526ad049e3692ba4c7a2777589745617eb1c8ea5 /netlib | |
parent | 0bbc40dc33dd7bd3729e639874882dd6dd7ea818 (diff) | |
download | mitmproxy-7fc544bc7ff8fd610ba9db92c0d3b59a0b040b5b.tar.gz mitmproxy-7fc544bc7ff8fd610ba9db92c0d3b59a0b040b5b.tar.bz2 mitmproxy-7fc544bc7ff8fd610ba9db92c0d3b59a0b040b5b.zip |
adjust netlib.wsgi to reflect changes in mitmproxys flow format
Diffstat (limited to 'netlib')
-rw-r--r-- | netlib/tcp.py | 2 | ||||
-rw-r--r-- | netlib/wsgi.py | 15 |
2 files changed, 11 insertions, 6 deletions
diff --git a/netlib/tcp.py b/netlib/tcp.py index 94ea8806..34e47999 100644 --- a/netlib/tcp.py +++ b/netlib/tcp.py @@ -178,7 +178,7 @@ class Address(object): This class wraps an IPv4/IPv6 tuple to provide named attributes and ipv6 information. """ def __init__(self, address, use_ipv6=False): - self.address = address + self.address = tuple(address) self.use_ipv6 = use_ipv6 @classmethod diff --git a/netlib/wsgi.py b/netlib/wsgi.py index 647cb899..b576bdff 100644 --- a/netlib/wsgi.py +++ b/netlib/wsgi.py @@ -1,17 +1,22 @@ import cStringIO, urllib, time, traceback -import odict +import odict, tcp class ClientConn: def __init__(self, address): - self.address = address + self.address = tcp.Address.wrap(address) + + +class Flow: + def __init__(self, client_conn): + self.client_conn = client_conn class Request: def __init__(self, client_conn, scheme, method, path, headers, content): self.scheme, self.method, self.path = scheme, method, path self.headers, self.content = headers, content - self.client_conn = client_conn + self.flow = Flow(client_conn) def date_time_string(): @@ -60,8 +65,8 @@ class WSGIAdaptor: 'SERVER_PROTOCOL': "HTTP/1.1", } environ.update(extra) - if request.client_conn.address: - environ["REMOTE_ADDR"], environ["REMOTE_PORT"] = request.client_conn.address + if request.flow.client_conn.address: + environ["REMOTE_ADDR"], environ["REMOTE_PORT"] = request.flow.client_conn.address() for key, value in request.headers.items(): key = 'HTTP_' + key.upper().replace('-', '_') |