diff options
author | Maximilian Hils <git@maximilianhils.com> | 2016-07-04 13:58:09 -0700 |
---|---|---|
committer | Maximilian Hils <git@maximilianhils.com> | 2016-07-04 13:58:09 -0700 |
commit | a6b3551934e2b8768177d6831ca08f97f5bdae44 (patch) | |
tree | 39fd8a2223b726b7b496b93ed55ade32e9ebf05e /netlib/http/request.py | |
parent | 2f8a1fd2cb1374941f436f36bbfa0d0b3d9213c7 (diff) | |
download | mitmproxy-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.py | 12 |
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): |