aboutsummaryrefslogtreecommitdiffstats
path: root/libmproxy/proxy.py
diff options
context:
space:
mode:
authorAldo Cortesi <aldo@nullcube.com>2011-09-05 07:47:47 +1200
committerAldo Cortesi <aldo@nullcube.com>2011-09-05 07:47:47 +1200
commite5bded7deecb396bef33ebc0a5e345e4d8cf7928 (patch)
tree9c737f16764d9aca3f8efe58b7ca4a4cdec01a1e /libmproxy/proxy.py
parent4cb0e5bfb47264c727b2f7ac0615e5d34e85609b (diff)
downloadmitmproxy-e5bded7deecb396bef33ebc0a5e345e4d8cf7928.tar.gz
mitmproxy-e5bded7deecb396bef33ebc0a5e345e4d8cf7928.tar.bz2
mitmproxy-e5bded7deecb396bef33ebc0a5e345e4d8cf7928.zip
Improve robustness against invalid data.
Diffstat (limited to 'libmproxy/proxy.py')
-rw-r--r--libmproxy/proxy.py6
1 files changed, 4 insertions, 2 deletions
diff --git a/libmproxy/proxy.py b/libmproxy/proxy.py
index 5a2a4f43..f0640f23 100644
--- a/libmproxy/proxy.py
+++ b/libmproxy/proxy.py
@@ -104,7 +104,6 @@ def parse_request_line(request):
return method, scheme, host, port, path, minor
-
class FileLike:
def __init__(self, o):
self.o = o
@@ -197,7 +196,10 @@ class ServerConnection:
if not len(parts) == 3:
raise ProxyError(502, "Invalid server response: %s."%line)
proto, code, msg = parts
- code = int(code)
+ try:
+ code = int(code)
+ except ValueError:
+ raise ProxyError(502, "Invalid server response: %s."%line)
headers = flow.Headers()
headers.read(self.rfile)
if code >= 100 and code <= 199: