From 106cb905db6ab5526fdfc22b79ecf1e5e4cce8cd Mon Sep 17 00:00:00 2001 From: Barbara Miller Date: Wed, 3 Aug 2022 11:15:25 -0700 Subject: [PATCH 1/2] zlib decompression --- warcprox/warcproxy.py | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/warcprox/warcproxy.py b/warcprox/warcproxy.py index 05eb8b7..2034ec0 100644 --- a/warcprox/warcproxy.py +++ b/warcprox/warcproxy.py @@ -46,6 +46,7 @@ import tempfile import hashlib import doublethink import re +import zlib class WarcProxyHandler(warcprox.mitmproxy.MitmProxyHandler): ''' @@ -175,7 +176,9 @@ class WarcProxyHandler(warcprox.mitmproxy.MitmProxyHandler): warcprox_meta = json.loads(self.headers['Warcprox-Meta']) self._security_check(warcprox_meta) self._enforce_limits(warcprox_meta) - self._enforce_blocks(warcprox_meta) + if 'blocks' in warcprox_meta: + warcprox_meta['blocks'] = zlib.decompress(warcprox_meta['blocks']).decode() + self._enforce_blocks(warcprox_meta) def _connect_to_remote_server(self): ''' From 3e8102221d794ab67e8d1c85d8cef47a086da5fa Mon Sep 17 00:00:00 2001 From: Barbara Miller Date: Wed, 3 Aug 2022 14:59:36 -0700 Subject: [PATCH 2/2] use 'compressed_blocks' --- warcprox/warcproxy.py | 7 ++++--- 1 file changed, 4 insertions(+), 3 deletions(-) diff --git a/warcprox/warcproxy.py b/warcprox/warcproxy.py index 2034ec0..be2affd 100644 --- a/warcprox/warcproxy.py +++ b/warcprox/warcproxy.py @@ -176,9 +176,10 @@ class WarcProxyHandler(warcprox.mitmproxy.MitmProxyHandler): warcprox_meta = json.loads(self.headers['Warcprox-Meta']) self._security_check(warcprox_meta) self._enforce_limits(warcprox_meta) - if 'blocks' in warcprox_meta: - warcprox_meta['blocks'] = zlib.decompress(warcprox_meta['blocks']).decode() - self._enforce_blocks(warcprox_meta) + if 'compressed_blocks' in warcprox_meta: + warcprox_meta['blocks'] = zlib.decompress(warcprox_meta['compressed_blocks']).decode() + del warcprox_meta['compressed_blocks'] + self._enforce_blocks(warcprox_meta) def _connect_to_remote_server(self): '''