diff options
author | Thomas Kriechbaumer <thomas@kriechbaumer.name> | 2016-01-31 14:16:03 +0100 |
---|---|---|
committer | Thomas Kriechbaumer <thomas@kriechbaumer.name> | 2016-01-31 20:19:32 +0100 |
commit | e98c729bb9b0d3debde6f61c948108bdc9dbafbe (patch) | |
tree | 98a0347b5b70ecab983031e1fc5a37a9ee673b94 /netlib/utils.py | |
parent | 280b491ab2b743f75483e2916e5344b22d4136e1 (diff) | |
download | mitmproxy-e98c729bb9b0d3debde6f61c948108bdc9dbafbe.tar.gz mitmproxy-e98c729bb9b0d3debde6f61c948108bdc9dbafbe.tar.bz2 mitmproxy-e98c729bb9b0d3debde6f61c948108bdc9dbafbe.zip |
test on python3
Diffstat (limited to 'netlib/utils.py')
-rw-r--r-- | netlib/utils.py | 14 |
1 files changed, 7 insertions, 7 deletions
diff --git a/netlib/utils.py b/netlib/utils.py index c537754a..1c1b617a 100644 --- a/netlib/utils.py +++ b/netlib/utils.py @@ -369,17 +369,17 @@ def multipartdecode(headers, content): def http2_read_raw_frame(rfile): - field = rfile.peek(3) - length = int(codecs.encode(field, 'hex_codec'), 16) + header = rfile.safe_read(9) + length = int(codecs.encode(header[:3], 'hex_codec'), 16) if length == 4740180: raise ValueError("Length field looks more like HTTP/1.1: %s" % rfile.peek(20)) - raw = rfile.safe_read(9 + length) - return raw + body = rfile.safe_read(length) + return [header, body] def http2_read_frame(rfile): - raw = http2_read_raw_frame(rfile) - frame, length = hyperframe.frame.Frame.parse_frame_header(raw[:9]) - frame.parse_body(memoryview(raw[9:])) + header, body = http2_read_raw_frame(rfile) + frame, length = hyperframe.frame.Frame.parse_frame_header(header) + frame.parse_body(memoryview(body)) return frame |