Fuzz introspector: wget_read_hunk_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
774 774 5 :

['load_system_priority_file', 'update_system_wide_priority_string', 'gnutls_strerror', 'construct_system_wide_priority_string', '_gnutls_buffer_clear']

874 874 _gnutls_update_system_priorities call site: 00000 /src/gnutls/lib/priority.c:2286
724 2053 19 :

['capabilities_to_zhaoxin_edx', 'check_avx_movbe', 'check_phe_partial', 'capabilities_to_intel_cpuid', 'check_padlock', 'check_sha', 'check_phe', '_gnutls_priority_update_non_aesni', 'gnutls_crypto_single_cipher_register', 'read_cpuid_vals', 'gnutls_crypto_single_mac_register', 'gnutls_crypto_single_digest_register', 'check_pclmul', 'check_fast_pclmul', '_gnutls_log', 'check_optimized_aes', 'check_ssse3', 'padlock_capability', 'check_phe_sha512']

724 2053 register_x86_padlock_crypto call site: 00000 /src/gnutls/lib/accelerated/x86/x86-common.c:383
502 502 2 :

['sock_read', 'poll_internal']

502 502 fd_read call site: 00186 /src/wget/src/connect.c:946
502 502 2 :

['sock_peek', 'poll_internal']

502 502 fd_peek call site: 00026 /src/wget/src/connect.c:972
47 47 1 :

['capabilities_to_intel_cpuid']

439 1303 register_x86_intel_crypto call site: 00000 /src/gnutls/lib/accelerated/x86/x86-common.c:817
25 30 2 :

['grow_hash_table', 'find_cell']

25 30 hash_table_put call site: 00015 /src/wget/src/hash.c:438
18 18 1 :

['_gnutls_asn2err']

40 40 _gnutls_global_init call site: 00000 /src/gnutls/lib/global.c:306
16 16 1 :

['_asn1_delete_list_and_nodes']

16 16 asn1_array2tree call site: 00000 /src/gnutls/lib/minitasn1/structure.c:275
12 12 2 :

['_gnutls_log', 'atoi']

22 1565 lib_init call site: 00000 /src/gnutls/lib/global.c:520
10 10 1 :

['_gnutls_log']

10 10 register_x86_intel_crypto call site: 00000 /src/gnutls/lib/accelerated/x86/x86-common.c:1027
10 10 1 :

['_gnutls_log']

10 10 _algo_register call site: 00000 /src/gnutls/lib/crypto-backend.c:67
10 10 1 :

['_gnutls_log']

10 10 _algo_register call site: 00000 /src/gnutls/lib/crypto-backend.c:87

Fuzzer calltree

0 LLVMFuzzerTestOneInput [function] [call site] 00000
1 calloc [call site] 00001
1 fd_register_transport [function] [call site] 00002
2 xmalloc [function] [call site] 00003
3 check_nonnull [function] [call site] 00004
4 xalloc_die [function] [call site] 00005
5 dgettext [call site] 00006
5 error [call site] 00007
5 abort [call site] 00008
2 hash_table_new [function] [call site] 00009
3 prime_size [function] [call site] 00011
4 abort [call site] 00012
2 hash_table_put [function] [call site] 00014
3 find_cell [function] [call site] 00015
3 grow_hash_table [function] [call site] 00016
4 prime_size [function] [call site] 00017
4 rpl_free [function] [call site] 00019
5 __errno_location [call site] 00020
5 __errno_location [call site] 00021
3 find_cell [function] [call site] 00022
1 fd_read_hunk [function] [call site] 00023
2 fd_peek [function] [call site] 00025
3 hash_table_get [function] [call site] 00026
4 find_cell [function] [call site] 00027
3 poll_internal [function] [call site] 00028
4 sock_poll [function] [call site] 00029
5 select_fd [function] [call site] 00030
6 select_fd_internal [function] [call site] 00031
7 gettext [call site] 00032
7 logprintf [function] [call site] 00033
8 __errno_location [call site] 00034
8 check_redirect_output [function] [call site] 00035
9 tcgetpgrp [call site] 00036
9 getpgrp [call site] 00037
9 redirect_output [function] [call site] 00038
10 fprintf [call site] 00039
10 unique_create [function] [call site] 00040
11 unique_name [function] [call site] 00041
12 file_exists_p [function] [call site] 00042
13 __errno_location [call site] 00043
13 stat [call site] 00044
13 getuid [call site] 00045
13 group_member [call site] 00046
13 __errno_location [call site] 00047
13 __errno_location [call site] 00048
12 unique_name_1 [function] [call site] 00049
13 strlen [call site] 00050
13 number_to_string [function] [call site] 00052
13 file_exists_p [function] [call site] 00053
12 xstrdup [function] [call site] 00054
13 strlen [call site] 00055
11 fopen_excl [function] [call site] 00058
12 open [call site] 00059
12 fdopen [call site] 00060
11 __errno_location [call site] 00061
11 rpl_free [function] [call site] 00062
11 unique_name [function] [call site] 00063
11 rpl_free [function] [call site] 00064
11 rpl_free [function] [call site] 00065
10 gettext [call site] 00066
10 quote [function] [call site] 00067
11 quote_n [function] [call site] 00068
12 quote_n_mem [function] [call site] 00069
13 quotearg_n_options [function] [call site] 00070
14 __errno_location [call site] 00071
14 abort [call site] 00072
14 xpalloc [function] [call site] 00073
15 xalloc_die [function] [call site] 00074
15 xrealloc [function] [call site] 00075
16 rpl_realloc [function] [call site] 00076
17 realloc [call site] 00077
16 xalloc_die [function] [call site] 00078
14 quotearg_buffer_restyled [function] [call site] 00079
15 __ctype_get_mb_cur_max [call site] 00080
15 gettext_quote [function] [call site] 00081
16 dgettext [call site] 00082
16 locale_charset [function] [call site] 00083
17 rpl_nl_langinfo [function] [call site] 00084
18 nl_langinfo [call site] 00085
16 c_strcasecmp [function] [call site] 00086
17 c_tolower [function] [call site] 00087
17 c_tolower [function] [call site] 00088
16 c_strcasecmp [function] [call site] 00089
15 gettext_quote [function] [call site] 00090
15 strlen [call site] 00091
15 abort [call site] 00092
15 strlen [call site] 00093
15 memcmp [call site] 00094
15 __ctype_b_loc [call site] 00095
15 strlen [call site] 00097
15 rpl_mbrtoc32 [function] [call site] 00098
16 mbrtoc32 [call site] 00099
16 hard_locale [function] [call site] 00100
17 setlocale_null_r [function] [call site] 00101
18 setlocale_null_r_unlocked [function] [call site] 00102
19 setlocale_null_unlocked [function] [call site] 00103
20 setlocale [call site] 00104
19 strlen [call site] 00105
17 strcmp [call site] 00106
15 c32isprint [function] [call site] 00107
16 iswprint [call site] 00108
15 mbsinit [call site] 00109
15 quotearg_buffer_restyled [function] [call site] 00110
16 quotearg_buffer_restyled [function] [call site] 00111
14 rpl_free [function] [call site] 00112
14 xcharalloc [function] [call site] 00113
14 quotearg_buffer_restyled [function] [call site] 00115
14 __errno_location [call site] 00116
10 fprintf [call site] 00117
10 log_dump_context [function] [call site] 00118
11 get_log_fp [function] [call site] 00119
11 get_warc_log_fp [function] [call site] 00120
11 fputs [call site] 00121
11 fputs [call site] 00122
11 fputs [call site] 00123
11 fputs [call site] 00124
11 rpl_fflush [function] [call site] 00125
12 __freading [call site] 00126
12 fflush [call site] 00127
12 clear_ungetc_buffer_preserving_position [function] [call site] 00128
13 rpl_fseeko [function] [call site] 00129
14 fileno [call site] 00130
14 lseek [call site] 00131
14 fseeko [call site] 00132
12 fflush [call site] 00133
11 rpl_fflush [function] [call site] 00134
10 gettext [call site] 00135
10 __errno_location [call site] 00136
10 strerror [call site] 00137
10 fprintf [call site] 00138
10 gettext [call site] 00139
10 fprintf [call site] 00141
10 log_dump_context [function] [call site] 00142
10 log_dump_context [function] [call site] 00143
9 redirect_output [function] [call site] 00144
8 __errno_location [call site] 00145
8 log_vprintf_internal [function] [call site] 00146
9 get_log_fp [function] [call site] 00147
9 get_warc_log_fp [function] [call site] 00148
9 vfprintf [call site] 00149
9 vsnprintf [call site] 00150
9 saved_append [function] [call site] 00153
10 strchr [call site] 00154
10 strlen [call site] 00155
10 saved_append_1 [function] [call site] 00156
11 free_log_line [function] [call site] 00157
12 rpl_free [function] [call site] 00158
11 strdupdelim [function] [call site] 00159
11 strlen [call site] 00162
11 xrealloc [function] [call site] 00163
11 strlen [call site] 00164
9 fputs [call site] 00166
9 fputs [call site] 00167
9 logflush [function] [call site] 00169
10 get_log_fp [function] [call site] 00170
10 get_warc_log_fp [function] [call site] 00171
10 rpl_fflush [function] [call site] 00172
10 rpl_fflush [function] [call site] 00173
8 __errno_location [call site] 00174
8 exit_wget [function] [call site] 00175
7 exit_wget [function] [call site] 00176
7 select [call site] 00177
7 __errno_location [call site] 00178
4 __errno_location [call site] 00179
3 sock_peek [function] [call site] 00180
4 recv [call site] 00181
4 __errno_location [call site] 00182
2 fd_read [function] [call site] 00185
3 hash_table_get [function] [call site] 00186
3 poll_internal [function] [call site] 00187
3 sock_read [function] [call site] 00188
4 read [call site] 00189
4 __errno_location [call site] 00190
2 __errno_location [call site] 00193
2 __errno_location [call site] 00195
1 response_head_terminator [function] [call site] 00197
2 memcmp [call site] 00198
1 connect_cleanup [function] [call site] 00200
2 hash_table_iterate [function] [call site] 00201
2 hash_table_iter_next [function] [call site] 00202
2 hash_table_destroy [function] [call site] 00204