aboutsummaryrefslogtreecommitdiffstats
path: root/netlib
diff options
context:
space:
mode:
authorMaximilian Hils <git@maximilianhils.com>2014-02-05 21:34:14 +0100
committerMaximilian Hils <git@maximilianhils.com>2014-02-05 21:34:14 +0100
commit7fc544bc7ff8fd610ba9db92c0d3b59a0b040b5b (patch)
tree526ad049e3692ba4c7a2777589745617eb1c8ea5 /netlib
parent0bbc40dc33dd7bd3729e639874882dd6dd7ea818 (diff)
downloadmitmproxy-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.py2
-rw-r--r--netlib/wsgi.py15
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('-', '_')