Fuzz introspector: zlib_uncompress2_fuzzer
For issues and ideas: https://github.com/ossf/fuzz-introspector/issues

Fuzz blockers

The followings are the branches where fuzzer fails to bypass.

Unique non-covered Complexity Unique Reachable Complexities Unique Reachable Functions All non-covered Complexity All Reachable Complexity Function Name Function Callsite Blocked Branch
252 474 6 :

['crc32', 'fixedtables', 'updatewindow', 'inflate_fast', 'adler32', 'inflate_table']

252 474 inflate call site: 00036 /src/zlib/inflate.c:817
0 0 None 252 474 inflate call site: 00011 /src/zlib/inflate.c:623
0 0 None 252 474 inflate call site: 00011 /src/zlib/inflate.c:629
0 0 None 252 474 inflate call site: 00026 /src/zlib/inflate.c:638
0 0 None 252 474 inflate call site: 00026 /src/zlib/inflate.c:656
0 0 None 252 474 inflate call site: 00042 /src/zlib/inflate.c:1137
0 0 None 21 46 inflate call site: 00038 /src/zlib/inflate.c:847
0 0 None 0 369 uncompress2 call site: 00001 /src/zlib/uncompr.c:36
0 0 None 0 15 inflateReset2 call site: 00005 /src/zlib/inflate.c:150
0 0 None 0 15 inflateReset2 call site: 00005 /src/zlib/inflate.c:167
0 0 None 0 12 uncompress2 call site: 00010 /src/zlib/uncompr.c:70
0 0 None 0 0 adler32_z call site: 00028 /src/zlib/adler32.c:72

Fuzzer calltree

0 LLVMFuzzerTestOneInput [function] [call site] 00000
1 uncompress2 [function] [call site] 00001
2 inflateInit_ [function] [call site] 00002
3 inflateInit2_ [function] [call site] 00003
4 inflateReset2 [function] [call site] 00004
5 inflateStateCheck [function] [call site] 00005
5 inflateReset [function] [call site] 00006
6 inflateStateCheck [function] [call site] 00007
6 inflateResetKeep [function] [call site] 00008
7 inflateStateCheck [function] [call site] 00009
2 inflate [function] [call site] 00010
2 inflateEnd [function] [call site] 00048
3 inflateStateCheck [function] [call site] 00049