From 45f4fb5a681a1f831c6df3cd8b464042a8e7c43e Mon Sep 17 00:00:00 2001 From: serversdwn Date: Thu, 12 Mar 2026 13:51:00 -0400 Subject: [PATCH] fix: bug where parser incorrectly preserves both DLE and XX --- parsers/s3_parser.py | 9 ++------- 1 file changed, 2 insertions(+), 7 deletions(-) diff --git a/parsers/s3_parser.py b/parsers/s3_parser.py index 2bd97c6..e76a691 100644 --- a/parsers/s3_parser.py +++ b/parsers/s3_parser.py @@ -321,13 +321,8 @@ def parse_bw(blob: bytes, trailer_len: int, validate_checksum: bool) -> List[Fra i += 1 continue - # AFTER_DLE - if b == DLE: - body.append(DLE) # 10 10 => literal 10 - else: - # Robust recovery: treat as literal DLE + byte - body.append(DLE) - body.append(b) + # AFTER_DLE: DLE XX => literal XX for any XX (full DLE stuffing) + body.append(b) state = IN_FRAME i += 1