aboutsummaryrefslogtreecommitdiffstats
path: root/libmproxy/protocol/http.py
diff options
context:
space:
mode:
authorMaximilian Hils <git@maximilianhils.com>2015-09-10 16:24:22 +0200
committerMaximilian Hils <git@maximilianhils.com>2015-09-10 16:24:22 +0200
commit35a99d2faf867dba1285a81a9baba6d1feeb71f9 (patch)
tree09d57cc94470b15a9c678a956f8eff7448166245 /libmproxy/protocol/http.py
parentebba79b6558b23cec13faa3562ff05ada5912ca4 (diff)
downloadmitmproxy-35a99d2faf867dba1285a81a9baba6d1feeb71f9.tar.gz
mitmproxy-35a99d2faf867dba1285a81a9baba6d1feeb71f9.tar.bz2
mitmproxy-35a99d2faf867dba1285a81a9baba6d1feeb71f9.zip
start reraising exceptions properly
Diffstat (limited to 'libmproxy/protocol/http.py')
-rw-r--r--libmproxy/protocol/http.py8
1 files changed, 5 insertions, 3 deletions
diff --git a/libmproxy/protocol/http.py b/libmproxy/protocol/http.py
index 212bec96..70c5095d 100644
--- a/libmproxy/protocol/http.py
+++ b/libmproxy/protocol/http.py
@@ -1,4 +1,6 @@
from __future__ import (absolute_import, print_function, division)
+import six
+import sys
from netlib import tcp
from netlib.http import http1, HttpErrorConnClosed, HttpError, Headers
@@ -62,7 +64,7 @@ class _StreamingHttpLayer(_HttpLayer):
if response.body == CONTENT_MISSING:
raise HttpError(502, "Cannot assemble flow with CONTENT_MISSING")
self.send_response_headers(response)
- self.send_response_body(response, response.body)
+ self.send_response_body(response, [response.body])
class Http1Layer(_StreamingHttpLayer):
@@ -381,9 +383,9 @@ class HttpLayer(Layer):
except NetLibError:
pass
if isinstance(e, ProtocolException):
- raise e
+ six.reraise(*sys.exc_info())
else:
- raise ProtocolException("Error in HTTP connection: %s" % repr(e), e)
+ six.reraise(ProtocolException, ProtocolException("Error in HTTP connection: %s" % repr(e), e), sys.exc_info()[2])
finally:
flow.live = False