aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--mitmproxy/protocol/http2.py6
-rw-r--r--test/mitmproxy/test_protocol_http2.py12
2 files changed, 9 insertions, 9 deletions
diff --git a/mitmproxy/protocol/http2.py b/mitmproxy/protocol/http2.py
index b6623aa3..83ff71e4 100644
--- a/mitmproxy/protocol/http2.py
+++ b/mitmproxy/protocol/http2.py
@@ -197,7 +197,7 @@ class Http2Layer(base.Layer):
self.client_conn.h2.push_stream(parent_eid, event.pushed_stream_id, event.headers)
self.client_conn.send(self.client_conn.h2.data_to_send())
- headers = netlib.http.Headers([[str(k), str(v)] for k, v in event.headers])
+ headers = netlib.http.Headers([[k, v] for k, v in event.headers])
self.streams[event.pushed_stream_id] = Http2SingleStreamLayer(self, event.pushed_stream_id, headers)
self.streams[event.pushed_stream_id].timestamp_start = time.time()
self.streams[event.pushed_stream_id].pushed = True
@@ -434,7 +434,7 @@ class Http2SingleStreamLayer(http._HttpTransmissionLayer, basethread.BaseThread)
self.server_conn.h2.safe_send_body(
self.is_zombie,
self.server_stream_id,
- message.body
+ [message.body]
)
if self.zombie: # pragma: no cover
@@ -453,7 +453,7 @@ class Http2SingleStreamLayer(http._HttpTransmissionLayer, basethread.BaseThread)
return models.HTTPResponse(
http_version=b"HTTP/2.0",
status_code=status_code,
- reason='',
+ reason=b'',
headers=headers,
content=None,
timestamp_start=self.timestamp_start,
diff --git a/test/mitmproxy/test_protocol_http2.py b/test/mitmproxy/test_protocol_http2.py
index 46d3dc05..58ffb787 100644
--- a/test/mitmproxy/test_protocol_http2.py
+++ b/test/mitmproxy/test_protocol_http2.py
@@ -169,8 +169,8 @@ class TestSimple(_Http2TestBase, _Http2ServerBase):
if isinstance(event, h2.events.ConnectionTerminated):
return False
elif isinstance(event, h2.events.RequestReceived):
- assert ('client-foo', 'client-bar-1') in event.headers
- assert ('client-foo', 'client-bar-2') in event.headers
+ assert (b'client-foo', b'client-bar-1') in event.headers
+ assert (b'client-foo', b'client-bar-2') in event.headers
import warnings
with warnings.catch_warnings():
@@ -538,7 +538,7 @@ class TestMaxConcurrentStreams(_Http2TestBase, _Http2ServerBase):
(':status', '200'),
('X-Stream-ID', str(event.stream_id)),
])
- h2_conn.send_data(event.stream_id, b'Stream-ID {}'.format(event.stream_id))
+ h2_conn.send_data(event.stream_id, 'Stream-ID {}'.format(event.stream_id).encode())
h2_conn.end_stream(event.stream_id)
wfile.write(h2_conn.data_to_send())
wfile.flush()
@@ -579,7 +579,7 @@ class TestMaxConcurrentStreams(_Http2TestBase, _Http2ServerBase):
assert len(self.master.state.flows) == len(new_streams)
for flow in self.master.state.flows:
assert flow.response.status_code == 200
- assert "Stream-ID" in flow.response.body
+ assert b"Stream-ID " in flow.response.body
@requires_alpn
@@ -598,7 +598,7 @@ class TestConnectionTerminated(_Http2TestBase, _Http2ServerBase):
@classmethod
def handle_server_event(self, event, h2_conn, rfile, wfile):
if isinstance(event, h2.events.RequestReceived):
- h2_conn.close_connection(error_code=5, last_stream_id=42, additional_data='foobar')
+ h2_conn.close_connection(error_code=5, last_stream_id=42, additional_data=b'foobar')
wfile.write(h2_conn.data_to_send())
wfile.flush()
return True
@@ -630,4 +630,4 @@ class TestConnectionTerminated(_Http2TestBase, _Http2ServerBase):
assert connection_terminated_event is not None
assert connection_terminated_event.error_code == 5
assert connection_terminated_event.last_stream_id == 42
- assert connection_terminated_event.additional_data == 'foobar'
+ assert connection_terminated_event.additional_data == b'foobar'