commit e5122b91a951d44702b11a70862ec99e851a2578 Author: Alexander Færøy ahf@torproject.org Date: Thu Apr 27 20:07:08 2017 +0200
Only compare the first 3 bytes when trying to detect LZMA compression.
This patch changes the logic in `detect_compression_method()` to only use the 3 first bytes when checking if a given input is LZMA encoded. --- src/common/compress.c | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-)
diff --git a/src/common/compress.c b/src/common/compress.c index 8502dee..738df9f 100644 --- a/src/common/compress.c +++ b/src/common/compress.c @@ -255,8 +255,8 @@ detect_compression_method(const char *in, size_t in_len) } else if (in_len > 2 && (in[0] & 0x0f) == 8 && (ntohs(get_uint16(in)) % 31) == 0) { return ZLIB_METHOD; - } else if (in_len > 3 && - fast_memeq(in, "\x5d\x00\x00\x00", 4)) { + } else if (in_len > 2 && + fast_memeq(in, "\x5d\x00\x00", 3)) { return LZMA_METHOD; } else if (in_len > 3 && fast_memeq(in, "\x28\xb5\x2f\xfd", 4)) {