aboutsummaryrefslogtreecommitdiffstats
path: root/netlib/http/request.py
diff options
context:
space:
mode:
authorMaximilian Hils <git@maximilianhils.com>2016-07-04 13:58:09 -0700
committerMaximilian Hils <git@maximilianhils.com>2016-07-04 13:58:09 -0700
commita6b3551934e2b8768177d6831ca08f97f5bdae44 (patch)
tree39fd8a2223b726b7b496b93ed55ade32e9ebf05e /netlib/http/request.py
parent2f8a1fd2cb1374941f436f36bbfa0d0b3d9213c7 (diff)
downloadmitmproxy-a6b3551934e2b8768177d6831ca08f97f5bdae44.tar.gz
mitmproxy-a6b3551934e2b8768177d6831ca08f97f5bdae44.tar.bz2
mitmproxy-a6b3551934e2b8768177d6831ca08f97f5bdae44.zip
raise ValueError if content-encoding is invalid
Diffstat (limited to 'netlib/http/request.py')
-rw-r--r--netlib/http/request.py12
1 files changed, 9 insertions, 3 deletions
diff --git a/netlib/http/request.py b/netlib/http/request.py
index 4ce94549..a8ec6238 100644
--- a/netlib/http/request.py
+++ b/netlib/http/request.py
@@ -347,7 +347,10 @@ class Request(message.Message):
def _get_urlencoded_form(self):
is_valid_content_type = "application/x-www-form-urlencoded" in self.headers.get("content-type", "").lower()
if is_valid_content_type:
- return tuple(netlib.http.url.decode(self.content))
+ try:
+ return tuple(netlib.http.url.decode(self.content))
+ except ValueError:
+ pass
return ()
def _set_urlencoded_form(self, value):
@@ -356,7 +359,7 @@ class Request(message.Message):
This will overwrite the existing content if there is one.
"""
self.headers["content-type"] = "application/x-www-form-urlencoded"
- self.content = netlib.http.url.encode(value)
+ self.content = netlib.http.url.encode(value).encode()
@urlencoded_form.setter
def urlencoded_form(self, value):
@@ -376,7 +379,10 @@ class Request(message.Message):
def _get_multipart_form(self):
is_valid_content_type = "multipart/form-data" in self.headers.get("content-type", "").lower()
if is_valid_content_type:
- return multipart.decode(self.headers, self.content)
+ try:
+ return multipart.decode(self.headers, self.content)
+ except ValueError:
+ pass
return ()
def _set_multipart_form(self, value):