From 4167713cc01aa8e7b0cbeca04160db559a2dcc11 Mon Sep 17 00:00:00 2001 From: Maximilian Hils Date: Mon, 22 Sep 2014 17:01:06 +0200 Subject: [PATCH] fix timestamp formatting: end_time may not be set --- libmproxy/console/common.py | 5 ++++- libmproxy/protocol/http.py | 6 ++++-- 2 files changed, 8 insertions(+), 3 deletions(-) diff --git a/libmproxy/console/common.py b/libmproxy/console/common.py index 104b72162..9d42d4fcb 100644 --- a/libmproxy/console/common.py +++ b/libmproxy/console/common.py @@ -190,7 +190,10 @@ def format_flow(f, focus, extended=False, hostheader=False, padding=2): else: contentdesc = "[no content]" - delta = f.response.timestamp_end - f.response.timestamp_start + if f.response.timestamp_end: + delta = f.response.timestamp_end - f.response.timestamp_start + else: + delta = 0 size = f.response.size() rate = utils.pretty_size(size / ( delta if delta > 0 else 1 ) ) diff --git a/libmproxy/protocol/http.py b/libmproxy/protocol/http.py index a5d438022..de5f99501 100644 --- a/libmproxy/protocol/http.py +++ b/libmproxy/protocol/http.py @@ -89,6 +89,7 @@ class HTTPMessage(stateobject.StateObject): """ Base class for HTTPRequest and HTTPResponse """ + def __init__(self, httpversion, headers, content, timestamp_start=None, timestamp_end=None): self.httpversion = httpversion @@ -917,6 +918,7 @@ class HTTPHandler(ProtocolHandler): HTTPHandler implements mitmproxys understanding of the HTTP protocol. """ + def __init__(self, c): super(HTTPHandler, self).__init__(c) self.expected_form_in = c.config.mode.http_form_in @@ -980,8 +982,8 @@ class HTTPHandler(ProtocolHandler): body_size_limit=self.c.config.body_size_limit ) except tcp.NetLibDisconnect: - # don't throw an error for disconnects that happen - # before/between requests. + # don't throw an error for disconnects that happen + # before/between requests. return False self.c.log( "request",