diff options
author | Maximilian Hils <git@maximilianhils.com> | 2014-07-21 21:06:55 +0200 |
---|---|---|
committer | Maximilian Hils <git@maximilianhils.com> | 2014-07-21 21:06:55 +0200 |
commit | 4b4a18a2e4d7cf3e8862192b68f5a2295da9acbe (patch) | |
tree | 0083b563b6bea92108acb0cb348f721558eb02ba /libmproxy/dump.py | |
parent | 562ac9e721c33b05e8889d4932dede794a9746a8 (diff) | |
download | mitmproxy-4b4a18a2e4d7cf3e8862192b68f5a2295da9acbe.tar.gz mitmproxy-4b4a18a2e4d7cf3e8862192b68f5a2295da9acbe.tar.bz2 mitmproxy-4b4a18a2e4d7cf3e8862192b68f5a2295da9acbe.zip |
add --stream options, various fixes
Diffstat (limited to 'libmproxy/dump.py')
-rw-r--r-- | libmproxy/dump.py | 14 |
1 files changed, 12 insertions, 2 deletions
diff --git a/libmproxy/dump.py b/libmproxy/dump.py index 1f107241..aeb34cc3 100644 --- a/libmproxy/dump.py +++ b/libmproxy/dump.py @@ -2,6 +2,7 @@ from __future__ import absolute_import import sys, os import netlib.utils from . import flow, filt, utils +from .protocol import http class DumpError(Exception): pass @@ -30,6 +31,7 @@ class Options(object): "showhost", "stickycookie", "stickyauth", + "stream_large_bodies", "verbosity", "wfile", ] @@ -69,6 +71,8 @@ class DumpMaster(flow.FlowMaster): self.showhost = options.showhost self.refresh_server_playback = options.refresh_server_playback + self.set_stream_large_bodies(options.stream_large_bodies) + if filtstr: self.filt = filt.parse(filtstr) else: @@ -80,6 +84,7 @@ class DumpMaster(flow.FlowMaster): if options.stickyauth: self.set_stickyauth(options.stickyauth) + if options.wfile: path = os.path.expanduser(options.wfile) try: @@ -157,12 +162,17 @@ class DumpMaster(flow.FlowMaster): if f.response: if self.o.flow_detail > 0: - sz = utils.pretty_size(len(f.response.content)) + if f.response.content == http.CONTENT_MISSING: + sz = "(content missing)" + else: + sz = utils.pretty_size(len(f.response.content)) result = " << %s %s"%(str_response(f.response), sz) if self.o.flow_detail > 1: result = result + "\n\n" + self.indent(4, f.response.headers) if self.o.flow_detail > 2: - if utils.isBin(f.response.content): + if f.response.content == http.CONTENT_MISSING: + cont = self.indent(4, "(content missing)") + elif utils.isBin(f.response.content): d = netlib.utils.hexdump(f.response.content) d = "\n".join("%s\t%s %s"%i for i in d) cont = self.indent(4, d) |