From 70e35b7017b830705125a401aae2c6e283495220 Mon Sep 17 00:00:00 2001 From: Maximilian Hils Date: Mon, 11 Apr 2016 14:14:18 -0700 Subject: peer_address -> ip_address --- mitmproxy/console/flowdetailview.py | 2 +- mitmproxy/flow.py | 14 ++++---------- mitmproxy/flow_format_compat.py | 1 + mitmproxy/models/__init__.py | 3 ++- mitmproxy/models/connections.py | 3 ++- mitmproxy/models/http.py | 7 +------ netlib/http/request.py | 1 + netlib/tcp.py | 6 +++--- test/mitmproxy/tutils.py | 2 +- 9 files changed, 16 insertions(+), 23 deletions(-) diff --git a/mitmproxy/console/flowdetailview.py b/mitmproxy/console/flowdetailview.py index d338b6bc..ca083b10 100644 --- a/mitmproxy/console/flowdetailview.py +++ b/mitmproxy/console/flowdetailview.py @@ -23,7 +23,7 @@ def flowdetails(state, flow): text.append(urwid.Text([("head", "Server Connection:")])) parts = [ ["Address", repr(sc.address)], - ["Peer Address", repr(sc.peer_address)], + ["Resolved Address", repr(sc.ip_address)], ] text.extend( diff --git a/mitmproxy/flow.py b/mitmproxy/flow.py index 246e9f82..cf07ea9a 100644 --- a/mitmproxy/flow.py +++ b/mitmproxy/flow.py @@ -842,21 +842,15 @@ class FlowMaster(controller.Master): """ this method creates a new artificial and minimalist request also adds it to flowlist """ - c = ClientConnection.from_state(dict( - address=dict(address=(host, port), use_ipv6=False), - clientcert=None, - ssl_established=False, - timestamp_start=None, - timestamp_end=None, - timestamp_ssl_setup=None - )) + c = ClientConnection.make_dummy(("", 0)) + s = ServerConnection.make_dummy((host, port)) s = ServerConnection.from_state(dict( address=dict(address=(host, port), use_ipv6=False), - peer_address=None, + ip_address=None, cert=None, sni=host, - source_address=dict(address=('', 0), use_ipv6=False), + source_address=dict(address=("", 0), use_ipv6=False), ssl_established=True, timestamp_start=None, timestamp_tcp_setup=None, diff --git a/mitmproxy/flow_format_compat.py b/mitmproxy/flow_format_compat.py index 84da3495..8478367c 100644 --- a/mitmproxy/flow_format_compat.py +++ b/mitmproxy/flow_format_compat.py @@ -41,6 +41,7 @@ def convert_016_017(data): def convert_017_018(data): + data["server_conn"]["ip_address"] = data["server_conn"].pop("peer_address") data["version"] = (0, 18) return data diff --git a/mitmproxy/models/__init__.py b/mitmproxy/models/__init__.py index 653b19fd..f5f0213a 100644 --- a/mitmproxy/models/__init__.py +++ b/mitmproxy/models/__init__.py @@ -1,9 +1,10 @@ from __future__ import (absolute_import, print_function, division) from .http import ( - HTTPFlow, HTTPRequest, HTTPResponse, Headers, decoded, + HTTPFlow, HTTPRequest, HTTPResponse, Headers, make_error_response, make_connect_request, make_connect_response, expect_continue_response ) +from netlib.http import decoded from .connections import ClientConnection, ServerConnection from .flow import Flow, Error diff --git a/mitmproxy/models/connections.py b/mitmproxy/models/connections.py index 2d2af1f2..91590bca 100644 --- a/mitmproxy/models/connections.py +++ b/mitmproxy/models/connections.py @@ -151,7 +151,7 @@ class ServerConnection(tcp.TCPClient, stateobject.StateObject): _stateobject_attributes = dict( address=tcp.Address, - peer_address=tcp.Address, + ip_address=tcp.Address, source_address=tcp.Address, ssl_established=bool, cert=certutils.SSLCert, @@ -172,6 +172,7 @@ class ServerConnection(tcp.TCPClient, stateobject.StateObject): def make_dummy(cls, address): return cls.from_state(dict( address=dict(address=address, use_ipv6=False), + ip_address=dict(address=address, use_ipv6=False), cert=None, sni=None, source_address=dict(address=('', 0), use_ipv6=False), diff --git a/mitmproxy/models/http.py b/mitmproxy/models/http.py index eec94dd8..77a809cf 100644 --- a/mitmproxy/models/http.py +++ b/mitmproxy/models/http.py @@ -1,14 +1,9 @@ from __future__ import (absolute_import, print_function, division) import cgi -import copy -import warnings -from email.utils import parsedate_tz, formatdate, mktime_tz -import time from netlib import encoding -from netlib.http import status_codes, Headers, Request, Response, decoded +from netlib.http import status_codes, Headers, Request, Response from netlib.tcp import Address -from .. import utils from .. import version from .flow import Flow diff --git a/netlib/http/request.py b/netlib/http/request.py index 692ba30f..160ce3a3 100644 --- a/netlib/http/request.py +++ b/netlib/http/request.py @@ -18,6 +18,7 @@ from .message import Message, _native, _always_bytes, MessageData # https://bugzilla.mozilla.org/show_bug.cgi?id=45891 host_header_re = re.compile(r"^(?P[^:]+|\[.+\])(?::(?P\d+))?$") + class RequestData(MessageData): def __init__(self, first_line_format, method, scheme, host, port, path, http_version, headers=None, content=None, timestamp_start=None, timestamp_end=None): diff --git a/netlib/tcp.py b/netlib/tcp.py index 04aa868b..d26bb5f7 100644 --- a/netlib/tcp.py +++ b/netlib/tcp.py @@ -458,11 +458,11 @@ class _Connection(object): def __init__(self, connection): if connection: self.connection = connection - self.peer_address = Address(connection.getpeername()) + self.ip_address = Address(connection.getpeername()) self._makefile() else: self.connection = None - self.peer_address = None + self.ip_address = None self.rfile = None self.wfile = None @@ -708,7 +708,7 @@ class TCPClient(_Connection): 'Error connecting to "%s": %s' % (self.address.host, err)) self.connection = connection - self.peer_address = Address(connection.getpeername()) + self.ip_address = Address(connection.getpeername()) self._makefile() def settimeout(self, n): diff --git a/test/mitmproxy/tutils.py b/test/mitmproxy/tutils.py index 191eb966..d51ac185 100644 --- a/test/mitmproxy/tutils.py +++ b/test/mitmproxy/tutils.py @@ -100,7 +100,7 @@ def tserver_conn(): c = ServerConnection.from_state(dict( address=dict(address=("address", 22), use_ipv6=True), source_address=dict(address=("address", 22), use_ipv6=True), - peer_address=None, + ip_address=None, cert=None, timestamp_start=1, timestamp_tcp_setup=2, -- cgit v1.2.3