From bcf9a88ee0ac71168ef2372b360cf063fa3a82b9 Mon Sep 17 00:00:00 2001 From: eunhhu Date: Mon, 19 Oct 2026 05:16:07 +0100 Subject: 140 measured again without the workarounds: the three specs' checks pass on the three paths as before (zlib's 640 streams and 240 damaged, dnspython's 400 messages and 300 damaged, h11's 200 streams on every cut and 200 damaged); lines inflate 132 to 121, DNS 115 to 106, HTTP 159 to 148 (Python's 1.5-1.9x, was 1.6-2.0x); time inflate 1,152 to 1,139 ns a byte (102x C), DNS 244 to 221 (61x, instructions 63.6 to 49.9 a byte: == in its compression), HTTP 278 to 270 (83x, with the free empty join); left: DNS's view calls no block fn, HTTP's let list takes no list value; module_specs, the checks and the timing tools read the bytes states (inflated, pending); the suite table's rows for 1, 3 and 9 --- research/experiments/044-specs/http_check.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'research/experiments/044-specs/http_check.py') diff --git a/research/experiments/044-specs/http_check.py b/research/experiments/044-specs/http_check.py index e3982c3..305f783 100644 --- a/research/experiments/044-specs/http_check.py +++ b/research/experiments/044-specs/http_check.py @@ -137,7 +137,7 @@ def run(module, packets, env, work): pairs = lambda fs: [(bytes.fromhex(f['name']), bytes.fromhex(f['value'])) for f in fs] requests = [(bytes.fromhex(r['method']), bytes.fromhex(r['target']), r['minor'], pairs(r['fields']), bytes.fromhex(r['body']), pairs(r['trailers'])) for r in s['requests']] - left = bytes.fromhex(s['pending'][0]['data']) if s['pending'] else b'' + left = bytes.fromhex(s['pending']) # a bytes state (028) return out, (requests, left), any(json.loads(line)['fault'] != 'none' for line in out) -- cgit v1.2.3