]> git.ipfire.org Git - thirdparty/zlib-ng.git/commitdiff
fix bug #192, oss-fuzz/9827 : MemorySanitizer:DEADLYSIGNAL
authorSebastian Pop <s.pop@samsung.com>
Tue, 21 Aug 2018 15:34:08 +0000 (10:34 -0500)
committerHans Kristian Rosbach <hk-github@circlestorm.org>
Mon, 17 Sep 2018 09:16:10 +0000 (11:16 +0200)
==4908==ERROR: MemorySanitizer: SEGV on unknown address 0x730fffffffff (pc 0x0000004b1b97 bp 0x7ffd4bf59a00 sp 0x7ffd4bf598a0 T4908)
==4908==The signal is caused by a READ memory access.
  #0 0x5a0599 in fizzle_matches zlib-ng/deflate_medium.c:168:12
  #1 0x59ea27 in deflate_medium zlib-ng/deflate_medium.c:296:21
  #2 0x5901c5 in zng_deflate zlib-ng/deflate.c:951:18
  #3 0x586955 in zng_compress2 zlib-ng/compress.c:59:15
  #4 0x5861eb in LLVMFuzzerTestOneInput zlib-ng/test/fuzz/compress_fuzzer.c:18:3
  #5 0x4e9b48 in fuzzer::Fuzzer::ExecuteCallback(unsigned char const*, unsigned long) /src/libfuzzer/FuzzerLoop.cpp:575:15
  #6 0x4a2f66 in fuzzer::RunOneTest(fuzzer::Fuzzer*, char const*, unsigned long) /src/libfuzzer/FuzzerDriver.cpp:280:6
  #7 0x4b3adb in fuzzer::FuzzerDriver(int*, char***, int (*)(unsigned char const*, unsigned long)) /src/libfuzzer/FuzzerDriver.cpp:715:9
  #8 0x4a2091 in main /src/libfuzzer/FuzzerMain.cpp:20:10
  #9 0x7fa3d7ff582f in __libc_start_main /build/glibc-Cl5G7W/glibc-2.23/csu/libc-start.c:291
  #10 0x41ec68 in _start

deflate_medium.c

index 5cb07370497ac2365f30f4bb682a396140b3454d..6b8dfc6da47c60a719c1c0ea0d06e1202075df4d 100644 (file)
@@ -172,7 +172,7 @@ static void fizzle_matches(deflate_state *s, struct match *current, struct match
             break;
         if (n.match_length >= 256)
             break;
-        if (n.match_start <= 0)
+        if (n.match_start <= 1)
             break;
 
         n.strstart--;