Fuzz introspector: inspector/source-codeexample_dict_fuzzer.c
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
14 14 2 :

['byte_swap', 'crc_word_big']

14 14 crc32_z call site: 00009 /src/zlib/crc32.c:731
7 7 1 :

['_tr_align']

7 31 deflate call site: 00104 /src/zlib/deflate.c:1212
0 474 6 :

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

0 474 inflate call site: 00145 /src/zlib/inflate.c:817
0 21 1 :

['crc32']

451 630 deflate call site: 00063 /src/zlib/deflate.c:1160
0 21 1 :

['deflateEnd']

0 21 deflateInit2_ call site: 00002 /src/zlib/deflate.c:499
0 21 1 :

['crc32']

0 21 read_buf call site: 00034 /src/zlib/deflate.c:227
0 17 2 :

['_tr_stored_block', 'flush_pending']

0 17 deflate_stored call site: 00072 /src/zlib/deflate.c:1800
0 7 1 :

['_tr_stored_block']

0 14 _tr_flush_block call site: 00087 /src/zlib/trees.c:1047
0 0 None 451 879 deflate call site: 00043 /src/zlib/deflate.c:974
0 0 None 451 869 deflate call site: 00044 /src/zlib/deflate.c:1009
0 0 None 451 869 deflate call site: 00044 /src/zlib/deflate.c:1011
0 0 None 451 869 deflate call site: 00044 /src/zlib/deflate.c:1013

Fuzzer calltree

0 LLVMFuzzerTestOneInput [function] [call site] 00000
1 test_dict_deflate [function] [call site] 00001
2 deflateInit2_ [function] [call site] 00002
3 deflateEnd [function] [call site] 00003
4 deflateStateCheck [function] [call site] 00004
3 deflateReset [function] [call site] 00005
4 deflateResetKeep [function] [call site] 00006
5 deflateStateCheck [function] [call site] 00007
5 _tr_init [function] [call site] 00024
6 tr_static_init [function] [call site] 00025
6 init_block [function] [call site] 00026
2 fprintf [call site] 00028
2 deflateSetDictionary [function] [call site] 00029
2 fprintf [call site] 00038
2 deflateBound [function] [call site] 00039
3 deflateStateCheck [function] [call site] 00040
2 calloc [call site] 00041
2 deflate [function] [call site] 00042
3 deflateStateCheck [function] [call site] 00043
3 flush_pending [function] [call site] 00044
4 _tr_flush_bits [function] [call site] 00045
3 putShortMSB [function] [call site] 00047
3 putShortMSB [function] [call site] 00048
3 putShortMSB [function] [call site] 00049
3 flush_pending [function] [call site] 00051
3 flush_pending [function] [call site] 00053
3 flush_pending [function] [call site] 00056
3 flush_pending [function] [call site] 00059
3 flush_pending [function] [call site] 00062
3 flush_pending [function] [call site] 00064
3 flush_pending [function] [call site] 00066
3 deflate_stored [function] [call site] 00067
4 _tr_stored_block [function] [call site] 00068
5 bi_windup [function] [call site] 00069
4 flush_pending [function] [call site] 00070
4 _tr_stored_block [function] [call site] 00073
4 flush_pending [function] [call site] 00074
3 deflate_huff [function] [call site] 00075
4 fill_window [function] [call site] 00076
4 _tr_flush_block [function] [call site] 00077
5 detect_data_type [function] [call site] 00078
5 build_tree [function] [call site] 00079
6 pqdownheap [function] [call site] 00080
6 pqdownheap [function] [call site] 00081
6 pqdownheap [function] [call site] 00082
6 gen_bitlen [function] [call site] 00083
6 gen_codes [function] [call site] 00084
7 bi_reverse [function] [call site] 00085
5 build_tree [function] [call site] 00086
5 build_bl_tree [function] [call site] 00087
6 scan_tree [function] [call site] 00088
6 scan_tree [function] [call site] 00089
6 build_tree [function] [call site] 00090
5 _tr_stored_block [function] [call site] 00091
5 compress_block [function] [call site] 00092
5 send_all_trees [function] [call site] 00093
5 compress_block [function] [call site] 00096
5 init_block [function] [call site] 00097
5 bi_windup [function] [call site] 00098
4 flush_pending [function] [call site] 00099
4 _tr_flush_block [function] [call site] 00100
4 flush_pending [function] [call site] 00101
4 _tr_flush_block [function] [call site] 00102
4 flush_pending [function] [call site] 00103
3 deflate_rle [function] [call site] 00104
4 fill_window [function] [call site] 00105
4 _tr_flush_block [function] [call site] 00106
4 flush_pending [function] [call site] 00107
4 _tr_flush_block [function] [call site] 00108
4 flush_pending [function] [call site] 00109
4 _tr_flush_block [function] [call site] 00110
4 flush_pending [function] [call site] 00111
3 _tr_stored_block [function] [call site] 00114
3 flush_pending [function] [call site] 00115
3 putShortMSB [function] [call site] 00116
3 putShortMSB [function] [call site] 00117
3 flush_pending [function] [call site] 00118
2 fprintf [call site] 00119
2 deflateEnd [function] [call site] 00120
2 fprintf [call site] 00121
1 test_dict_inflate [function] [call site] 00122
2 inflateInit_ [function] [call site] 00123
3 inflateInit2_ [function] [call site] 00124
4 inflateReset2 [function] [call site] 00125
5 inflateStateCheck [function] [call site] 00126
5 inflateReset [function] [call site] 00127
6 inflateStateCheck [function] [call site] 00128
6 inflateResetKeep [function] [call site] 00129
7 inflateStateCheck [function] [call site] 00130
2 fprintf [call site] 00131
2 calloc [call site] 00132
2 fprintf [call site] 00157
2 inflateSetDictionary [function] [call site] 00158
3 inflateStateCheck [function] [call site] 00159
3 updatewindow [function] [call site] 00162
2 fprintf [call site] 00163
2 inflateEnd [function] [call site] 00164
3 inflateStateCheck [function] [call site] 00165
2 fprintf [call site] 00166
2 memcmp [call site] 00167
2 fprintf [call site] 00168