diff options
Diffstat (limited to 'libmproxy')
-rw-r--r-- | libmproxy/console/__init__.py | 1 | ||||
-rw-r--r-- | libmproxy/console/flowview.py | 9 | ||||
-rw-r--r-- | libmproxy/flow.py | 6 |
3 files changed, 11 insertions, 5 deletions
diff --git a/libmproxy/console/__init__.py b/libmproxy/console/__init__.py index fe75a047..ba699d33 100644 --- a/libmproxy/console/__init__.py +++ b/libmproxy/console/__init__.py @@ -526,6 +526,7 @@ class ConsoleMaster(flow.FlowMaster): def spawn_external_viewer(self, data, contenttype): if contenttype: + contenttype = contenttype.split(";")[0] ext = mimetypes.guess_extension(contenttype) or "" else: ext = "" diff --git a/libmproxy/console/flowview.py b/libmproxy/console/flowview.py index 8932b912..da5a6c65 100644 --- a/libmproxy/console/flowview.py +++ b/libmproxy/console/flowview.py @@ -16,7 +16,7 @@ import os, sys import urwid import common, grideditor, contentview -from .. import utils, flow +from .. import utils, flow, controller def _mkhelp(): text = [] @@ -341,7 +341,12 @@ class FlowView(common.WWrap): conn = self.flow.request else: if not self.flow.response: - self.flow.response = flow.Response(self.flow.request, 200, "OK", flow.ODictCaseless(), "", None) + self.flow.response = flow.Response( + self.flow.request, + self.flow.request.httpversion, + 200, "OK", flow.ODictCaseless(), "", None + ) + self.flow.response.reply = controller.DummyReply() conn = self.flow.response self.flow.backup() diff --git a/libmproxy/flow.py b/libmproxy/flow.py index 1d15029b..10c5da5d 100644 --- a/libmproxy/flow.py +++ b/libmproxy/flow.py @@ -542,7 +542,7 @@ class Request(HTTPMsg): headers["host"] = [utils.hostport(self.scheme, self.host, self.port)] content = self.content if content: - headers["content-length"] = [str(len(content))] + headers["Content-Length"] = [str(len(content))] else: content = "" if self.close: @@ -737,7 +737,7 @@ class Response(HTTPMsg): ['proxy-connection', 'transfer-encoding'] ) if self.content: - headers["content-length"] = [str(len(self.content))] + headers["Content-Length"] = [str(len(self.content))] proto = "HTTP/%s.%s %s %s"%(self.httpversion[0], self.httpversion[1], self.code, str(self.msg)) data = (proto, str(headers)) return FMT%data @@ -1548,7 +1548,7 @@ class FlowMaster(controller.Master): if f.request: f.request._set_replay() if f.request.content: - f.request.headers["content-length"] = [str(len(f.request.content))] + f.request.headers["Content-Length"] = [str(len(f.request.content))] f.response = None f.error = None self.process_new_request(f) |