aboutsummaryrefslogtreecommitdiffstats
path: root/libmproxy
diff options
context:
space:
mode:
Diffstat (limited to 'libmproxy')
-rw-r--r--libmproxy/console/common.py10
-rw-r--r--libmproxy/console/palettes.py1
-rw-r--r--libmproxy/flow.py2
-rw-r--r--libmproxy/proxy.py7
4 files changed, 10 insertions, 10 deletions
diff --git a/libmproxy/console/common.py b/libmproxy/console/common.py
index 74830237..006303a7 100644
--- a/libmproxy/console/common.py
+++ b/libmproxy/console/common.py
@@ -144,9 +144,7 @@ def raw_format_flow(f, focus, extended, padding):
if f["resp_ctype"]:
resp.append(fcol(f["resp_ctype"], rc))
resp.append(fcol(f["resp_clen"], rc))
-
- resp.append(fcol(f["resp_et"], "time"))
- resp.append(fcol(f["resp_rate"], "highlight"))
+ resp.append(fcol(f["resp_rate"], rc))
elif f["err_msg"]:
resp.append(fcol(SYMBOL_RETURN, "error"))
@@ -190,15 +188,15 @@ def format_flow(f, focus, extended=False, hostheader=False, padding=2):
else:
contentdesc = "[no content]"
- delta = f.response.timestamp_end - f.request.timestamp_start
- rate = utils.pretty_size(len(f.response.content) / delta)
+ delta = f.response.timestamp_end - f.response.timestamp_start
+ size = len(f.response.content) + f.response.get_header_size()
+ rate = utils.pretty_size(size / delta)
d.update(dict(
resp_code = f.response.code,
resp_is_replay = f.response.is_replay(),
resp_acked = f.response.reply.acked,
resp_clen = contentdesc,
- resp_et = "{0:2.0f}ms".format(delta * 1000),
resp_rate = "{0}/s".format(rate),
))
t = f.response.headers["content-type"]
diff --git a/libmproxy/console/palettes.py b/libmproxy/console/palettes.py
index df84a1e4..650cf261 100644
--- a/libmproxy/console/palettes.py
+++ b/libmproxy/console/palettes.py
@@ -35,7 +35,6 @@ palettes = {
('header', 'dark cyan', 'default'),
('highlight', 'white,bold', 'default'),
- ('time', 'light red', 'default'),
('intercept', 'brown', 'default', None, '#f60', 'default'),
('replay', 'light green', 'default', None, '#0f0', 'default'),
('ack', 'light red', 'default'),
diff --git a/libmproxy/flow.py b/libmproxy/flow.py
index 84836d11..24042812 100644
--- a/libmproxy/flow.py
+++ b/libmproxy/flow.py
@@ -618,7 +618,7 @@ class Response(HTTPMsg):
self.headers, self.content = headers, content
self.cert = cert
self.timestamp_start = timestamp_start or utils.timestamp()
- self.timestamp_end = max(timestamp_end or utils.timestamp(), timestamp_start)
+ self.timestamp_end = timestamp_end or utils.timestamp()
self.replay = False
def _refresh_cookie(self, c, delta):
diff --git a/libmproxy/proxy.py b/libmproxy/proxy.py
index b0c15463..75a54192 100644
--- a/libmproxy/proxy.py
+++ b/libmproxy/proxy.py
@@ -88,11 +88,13 @@ class RequestReplayThread(threading.Thread):
server = ServerConnection(self.config, r.scheme, r.host, r.port, r.host)
server.connect()
server.send(r)
+ tsstart = utils.timestamp()
httpversion, code, msg, headers, content = http.read_response(
server.rfile, r.method, self.config.body_size_limit
)
response = flow.Response(
- self.flow.request, httpversion, code, msg, headers, content, server.cert
+ self.flow.request, httpversion, code, msg, headers, content, server.cert,
+ server.rfile.first_byte_timestamp
)
self.channel.ask(response)
except (ProxyError, http.HttpError, tcp.NetLibError), v:
@@ -224,6 +226,7 @@ class ProxyHandler(tcp.BaseHandler):
request.ssl_setup_timestamp = sc.ssl_setup_timestamp
sc.rfile.reset_timestamps()
try:
+ tsstart = utils.timestamp()
httpversion, code, msg, headers, content = http.read_response(
sc.rfile,
request.method,
@@ -242,7 +245,7 @@ class ProxyHandler(tcp.BaseHandler):
response = flow.Response(
request, httpversion, code, msg, headers, content, sc.cert,
- sc.rfile.first_byte_timestamp, utils.timestamp()
+ sc.rfile.first_byte_timestamp
)
response_reply = self.channel.ask(response)
# Not replying to the server invalidates the server