Fuzz introspector: inspector/light/source_filesgzio_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 :

['crc_word_big', 'byte_swap']

14 14 crc32_z call site: 00028 /src/zlib/crc32.c:731
8 8 2 :

['malloc', 'strlen']

8 8 gz_error call site: 00011 /src/zlib/gzlib.c:546
4 17 3 :

['__errno_location', 'strerror', 'gz_error']

4 17 gz_load call site: 00170 /src/zlib/gzread.c:27
2 2 1 :

['perror']

2 2 file_compress call site: 00000 /src/minigzip_fuzzer.c:385
2 2 1 :

['perror']

2 2 file_uncompress call site: 00000 /src/minigzip_fuzzer.c:434
0 510 1 :

['gz_zero']

2 1048 gzclose_w call site: 00264 /src/zlib/gzwrite.c:609
0 510 1 :

['gz_zero']

0 2016 gz_write call site: 00141 /src/zlib/gzwrite.c:185
0 502 1 :

['gz_comp']

0 502 gzvprintf call site: 00241 /src/zlib/gzwrite.c:418
0 423 1 :

['gz_skip']

0 1230 gz_read call site: 00155 /src/zlib/gzread.c:277
0 70 1 :

['deflateReset']

6 505 gz_comp call site: 00051 /src/zlib/gzwrite.c:90
0 59 3 :

['_tr_stored_block', 'read_buf', 'flush_pending']

0 59 deflate_stored call site: 00086 /src/zlib/deflate.c:1757
0 25 1 :

['gzrewind']

0 25 gzseek64 call site: 00211 /src/zlib/gzlib.c:387

Fuzzer calltree

0 LLVMFuzzerTestOneInput [function] [call site] 00000
1 mkstemp [call site] 00001
1 close [call site] 00002
1 gzopen [function] [call site] 00003
2 gz_open [function] [call site] 00004
3 strlen [call site] 00005
3 snprintf [call site] 00006
3 open [call site] 00007
3 lseek64 [call site] 00008
3 lseek64 [call site] 00009
3 gz_reset [function] [call site] 00010
4 gz_error [function] [call site] 00011
5 strlen [call site] 00012
5 strlen [call site] 00013
5 snprintf [call site] 00014
1 gzputc [function] [call site] 00015
2 gz_zero [function] [call site] 00016
3 gz_comp [function] [call site] 00017
4 gz_init [function] [call site] 00018
5 deflateInit2_ [function] [call site] 00021
6 deflateEnd [function] [call site] 00022
7 deflateStateCheck [function] [call site] 00023
6 deflateReset [function] [call site] 00024
7 deflateResetKeep [function] [call site] 00025
8 deflateStateCheck [function] [call site] 00026
8 crc32 [function] [call site] 00027
9 crc32_z [function] [call site] 00028
10 crc_word [function] [call site] 00029
10 crc_word [function] [call site] 00030
10 crc_word [function] [call site] 00031
10 crc_word [function] [call site] 00032
10 crc_word [function] [call site] 00033
10 byte_swap [function] [call site] 00034
10 crc_word_big [function] [call site] 00035
10 crc_word_big [function] [call site] 00036
10 crc_word_big [function] [call site] 00037
10 crc_word_big [function] [call site] 00038
10 crc_word_big [function] [call site] 00039
10 byte_swap [function] [call site] 00040
8 _tr_init [function] [call site] 00043
9 tr_static_init [function] [call site] 00044
9 init_block [function] [call site] 00045
4 write [call site] 00048
4 __errno_location [call site] 00049
4 strerror [call site] 00050
4 deflateReset [function] [call site] 00052
4 write [call site] 00053
4 __errno_location [call site] 00054
4 strerror [call site] 00055
4 deflate [function] [call site] 00057
5 deflateStateCheck [function] [call site] 00058
5 flush_pending [function] [call site] 00059
6 _tr_flush_bits [function] [call site] 00060
5 putShortMSB [function] [call site] 00062
5 putShortMSB [function] [call site] 00063
5 putShortMSB [function] [call site] 00064
5 flush_pending [function] [call site] 00066
5 flush_pending [function] [call site] 00068
5 flush_pending [function] [call site] 00071
5 flush_pending [function] [call site] 00074
5 flush_pending [function] [call site] 00077
5 flush_pending [function] [call site] 00079
5 flush_pending [function] [call site] 00081
5 deflate_stored [function] [call site] 00082
6 _tr_stored_block [function] [call site] 00083
7 bi_windup [function] [call site] 00084
6 flush_pending [function] [call site] 00085
6 _tr_stored_block [function] [call site] 00090
6 flush_pending [function] [call site] 00091
5 deflate_huff [function] [call site] 00092
6 fill_window [function] [call site] 00093
6 _tr_flush_block [function] [call site] 00096
7 detect_data_type [function] [call site] 00097
7 build_tree [function] [call site] 00098
8 pqdownheap [function] [call site] 00099
8 pqdownheap [function] [call site] 00100
8 pqdownheap [function] [call site] 00101
8 gen_bitlen [function] [call site] 00102
8 gen_codes [function] [call site] 00103
9 bi_reverse [function] [call site] 00104
7 build_tree [function] [call site] 00105
7 build_bl_tree [function] [call site] 00106
8 scan_tree [function] [call site] 00107
8 scan_tree [function] [call site] 00108
8 build_tree [function] [call site] 00109
7 _tr_stored_block [function] [call site] 00110
7 compress_block [function] [call site] 00111
7 send_all_trees [function] [call site] 00112
7 compress_block [function] [call site] 00115
7 init_block [function] [call site] 00116
7 bi_windup [function] [call site] 00117
6 flush_pending [function] [call site] 00118
6 _tr_flush_block [function] [call site] 00119
6 flush_pending [function] [call site] 00120
6 _tr_flush_block [function] [call site] 00121
6 flush_pending [function] [call site] 00122
5 deflate_rle [function] [call site] 00123
6 fill_window [function] [call site] 00124
6 _tr_flush_block [function] [call site] 00125
6 flush_pending [function] [call site] 00126
6 _tr_flush_block [function] [call site] 00127
6 flush_pending [function] [call site] 00128
6 _tr_flush_block [function] [call site] 00129
6 flush_pending [function] [call site] 00130
5 _tr_stored_block [function] [call site] 00133
5 flush_pending [function] [call site] 00134
5 putShortMSB [function] [call site] 00135
5 putShortMSB [function] [call site] 00136
5 flush_pending [function] [call site] 00137
1 gzread [function] [call site] 00153
2 gz_read [function] [call site] 00155
3 gz_skip [function] [call site] 00156
4 gz_fetch [function] [call site] 00157
5 gz_look [function] [call site] 00158
6 inflateInit2_ [function] [call site] 00160
7 inflateReset2 [function] [call site] 00161
8 inflateStateCheck [function] [call site] 00162
8 inflateReset [function] [call site] 00163
9 inflateStateCheck [function] [call site] 00164
9 inflateResetKeep [function] [call site] 00165
10 inflateStateCheck [function] [call site] 00166
6 gz_avail [function] [call site] 00168
7 gz_load [function] [call site] 00169
8 read [call site] 00170
8 __errno_location [call site] 00171
8 strerror [call site] 00172
6 inflateReset [function] [call site] 00173
3 gz_decomp [function] [call site] 00207
1 gzseek [function] [call site] 00208
2 gzseek64 [function] [call site] 00209
3 lseek64 [call site] 00210
3 gzrewind [function] [call site] 00212
4 lseek64 [call site] 00213
1 gzsetparams [function] [call site] 00227
2 deflateParams [function] [call site] 00230
3 deflateStateCheck [function] [call site] 00231
3 slide_hash [function] [call site] 00233
1 gzoffset [function] [call site] 00247
2 gzoffset64 [function] [call site] 00248
3 lseek64 [call site] 00249
1 gzclose [function] [call site] 00258
2 gzclose_r [function] [call site] 00259
3 inflateEnd [function] [call site] 00260
4 inflateStateCheck [function] [call site] 00261
3 close [call site] 00263
1 remove [call site] 00270
1 remove [call site] 00272