Fuzz introspector: libwget_html_url_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
82 82 8 :

['ferror', 'wget_error_printf_exit', 'fread', 'getc', 'clearerr', 'yyrealloc', 'yyrestart', '__errno_location']

82 82 yy_get_next_buffer call site: 00210 /src/wget2/libwget/css_tokenizer.c:3108
2 2 1 :

['__errno_location']

2 2 yylex_init call site: 00173 /src/wget2/libwget/css_tokenizer.c:3920
0 54 1 :

['getToken']

0 54 getValue call site: 00106 /src/wget2/libwget/xml.c:251
0 6 1 :

['wget_strmemdup']

0 83 wget_http_parse_content_type call site: 00147 /src/wget2/libwget/http_parse.c:481
0 0 None 50 1309 html_get_url call site: 00166 /src/wget2/libwget/html_url.c:209
0 0 None 12 99 yylex call site: 00206 /src/wget2/libwget/css_tokenizer.c:2651
0 0 None 12 97 yylex call site: 00206 /src/wget2/libwget/css_tokenizer.c:2990
0 0 None 12 97 yylex call site: 00209 /src/wget2/libwget/css_tokenizer.c:3027
0 0 None 10 1104 parseXML call site: 00005 /src/wget2/libwget/xml.c:445
0 0 None 10 1104 parseXML call site: 00013 /src/wget2/libwget/xml.c:466
0 0 None 10 1104 parseXML call site: 00089 /src/wget2/libwget/xml.c:488
0 0 None 10 1104 parseXML call site: 00105 /src/wget2/libwget/xml.c:535

Fuzzer calltree

0 LLVMFuzzerTestOneInput [function] [call site] 00000
1 __assert_fail [call site] 00001
1 wget_html_get_urls_inline [function] [call site] 00002
2 wget_html_parse_buffer [function] [call site] 00003
3 wget_xml_parse_buffer [function] [call site] 00004
4 parseXML [function] [call site] 00005
5 wget_strlcpy [function] [call site] 00006
6 strlen [call site] 00007
5 getContent [function] [call site] 00008
5 wget_debug_printf [function] [call site] 00009
5 getToken [function] [call site] 00010
6 strchr [call site] 00011
6 wget_debug_printf [function] [call site] 00012
5 wget_snprintf [function] [call site] 00014
6 wget_vsnprintf [function] [call site] 00015
7 wget_buffer_init [function] [call site] 00016
8 wget_malloc [function] [call site] 00017
7 wget_buffer_vprintf [function] [call site] 00018
8 wget_buffer_vprintf_append [function] [call site] 00019
9 wget_buffer_memcat [function] [call site] 00020
10 buffer_realloc [function] [call site] 00021
11 wget_realloc [function] [call site] 00022
11 wget_malloc [function] [call site] 00023
9 wget_buffer_strcat [function] [call site] 00024
10 strlen [call site] 00025
10 wget_buffer_memcat [function] [call site] 00026
9 convert_dec_fast [function] [call site] 00027
10 wget_buffer_memcat [function] [call site] 00028
9 wget_buffer_memcat [function] [call site] 00029
9 convert_pointer [function] [call site] 00030
10 wget_buffer_memcat [function] [call site] 00031
10 wget_buffer_memcat [function] [call site] 00032
10 wget_buffer_memcat [function] [call site] 00033
9 wget_buffer_memset_append [function] [call site] 00034
10 buffer_realloc [function] [call site] 00035
9 read_flag_chars [function] [call site] 00036
9 read_field_width [function] [call site] 00037
10 c_isdigit [function] [call site] 00038
9 read_field_width [function] [call site] 00039
9 read_precision [function] [call site] 00040
10 c_isdigit [function] [call site] 00041
10 c_isdigit [function] [call site] 00042
9 read_precision [function] [call site] 00043
9 copy_string [function] [call site] 00044
10 wget_buffer_strcat [function] [call site] 00045
10 strnlen [call site] 00046
10 strlen [call site] 00047
10 wget_buffer_memcat [function] [call site] 00048
10 wget_buffer_memset_append [function] [call site] 00049
10 wget_buffer_memset_append [function] [call site] 00050
10 wget_buffer_memcat [function] [call site] 00051
10 wget_buffer_memcat [function] [call site] 00052
10 wget_buffer_memcat [function] [call site] 00053
9 copy_string [function] [call site] 00054
9 convert_dec [function] [call site] 00055
10 wget_buffer_memset_append [function] [call site] 00056
10 wget_buffer_memset_append [function] [call site] 00057
10 wget_buffer_memcat [function] [call site] 00058
10 wget_buffer_memset_append [function] [call site] 00059
10 wget_buffer_memcat [function] [call site] 00060
10 wget_buffer_memset_append [function] [call site] 00061
10 wget_buffer_memset_append [function] [call site] 00062
10 wget_buffer_memset_append [function] [call site] 00063
10 wget_buffer_memset_append [function] [call site] 00064
10 wget_buffer_memset_append [function] [call site] 00065
10 wget_buffer_memset_append [function] [call site] 00066
10 wget_buffer_memset_append [function] [call site] 00067
10 wget_buffer_memset_append [function] [call site] 00068
10 wget_buffer_memset_append [function] [call site] 00069
10 wget_buffer_memset_append [function] [call site] 00070
10 wget_buffer_memset_append [function] [call site] 00071
10 wget_buffer_memcat [function] [call site] 00072
10 wget_buffer_memset_append [function] [call site] 00073
10 wget_buffer_memset_append [function] [call site] 00074
10 wget_buffer_memcat [function] [call site] 00075
10 wget_buffer_memset_append [function] [call site] 00076
10 wget_buffer_memset_append [function] [call site] 00077
10 wget_buffer_memcat [function] [call site] 00078
9 convert_dec [function] [call site] 00079
9 convert_dec [function] [call site] 00080
9 convert_dec [function] [call site] 00081
9 convert_dec [function] [call site] 00082
9 convert_dec [function] [call site] 00083
9 wget_buffer_memset_append [function] [call site] 00084
7 wget_buffer_deinit [function] [call site] 00085
7 wget_buffer_deinit [function] [call site] 00086
5 wget_snprintf [function] [call site] 00087
5 strncmp [call site] 00089
5 wget_strcasecmp_ascii [function] [call site] 00090
6 c_strcasecmp [function] [call site] 00091
5 wget_debug_printf [function] [call site] 00094
5 getScriptContent [function] [call site] 00095
6 strncmp [call site] 00096
6 strncmp [call site] 00097
6 wget_strncasecmp_ascii [function] [call site] 00098
7 c_strncasecmp [function] [call site] 00099
5 wget_debug_printf [function] [call site] 00100
5 wget_strcasecmp_ascii [function] [call site] 00101
5 getStyleContent [function] [call site] 00102
6 wget_strncasecmp_ascii [function] [call site] 00103
5 wget_debug_printf [function] [call site] 00104
5 parseXML [function] [call site] 00105
6 getValue [function] [call site] 00106
7 getHTMLValue [function] [call site] 00107
8 strchr [call site] 00108
8 wget_debug_printf [function] [call site] 00109
6 wget_debug_printf [function] [call site] 00111
6 wget_debug_printf [function] [call site] 00112
6 strncmp [call site] 00113
6 wget_malloc [function] [call site] 00115
6 strncmp [call site] 00117
6 getProcessing [function] [call site] 00118
7 getUnparsed [function] [call site] 00119
6 wget_debug_printf [function] [call site] 00120
6 strncmp [call site] 00121
6 getSpecial [function] [call site] 00122
7 getUnparsed [function] [call site] 00123
6 wget_debug_printf [function] [call site] 00124
6 strncmp [call site] 00125
6 getComment [function] [call site] 00126
7 getUnparsed [function] [call site] 00127
6 wget_debug_printf [function] [call site] 00128
2 html_get_url [function] [call site] 00129
3 wget_strcasecmp_ascii [function] [call site] 00130
3 wget_strcasecmp_ascii [function] [call site] 00131
3 wget_strcasecmp_ascii [function] [call site] 00132
3 wget_strcasecmp_ascii [function] [call site] 00133
3 wget_strcasecmp_ascii [function] [call site] 00134
3 wget_strncasecmp_ascii [function] [call site] 00135
3 wget_strcasecmp_ascii [function] [call site] 00136
3 wget_strmemcpy_a [function] [call site] 00137
4 wget_malloc [function] [call site] 00138
3 c_isspace [function] [call site] 00139
3 c_isspace [function] [call site] 00140
3 wget_strncasecmp_ascii [function] [call site] 00141
3 wget_strncasecmp_ascii [function] [call site] 00142
3 wget_strcasecmp_ascii [function] [call site] 00143
3 wget_strmemcpy_a [function] [call site] 00144
3 wget_http_parse_content_type [function] [call site] 00145
4 c_isblank [function] [call site] 00146
4 wget_http_istoken [function] [call site] 00147
5 http_isseparator [function] [call site] 00148
4 wget_strmemdup [function] [call site] 00149
5 wget_malloc [function] [call site] 00150
4 wget_http_parse_param [function] [call site] 00151
5 c_isblank [function] [call site] 00152
5 c_isblank [function] [call site] 00153
5 wget_http_istoken [function] [call site] 00154
5 wget_strmemdup [function] [call site] 00155
5 c_isblank [function] [call site] 00156
5 c_isblank [function] [call site] 00157
5 wget_http_parse_quoted_string [function] [call site] 00158
6 wget_strmemdup [function] [call site] 00159
5 wget_http_parse_token [function] [call site] 00160
6 wget_http_istoken [function] [call site] 00161
6 wget_strmemdup [function] [call site] 00162
3 wget_strcasecmp_ascii [function] [call site] 00163
3 wget_strncasecmp_ascii [function] [call site] 00164
3 wget_strcasecmp_ascii [function] [call site] 00165
3 wget_strmemdup [function] [call site] 00166
3 wget_vector_find [function] [call site] 00167
3 wget_vector_find [function] [call site] 00168
3 wget_strcasecmp_ascii [function] [call site] 00169
3 wget_css_parse_buffer [function] [call site] 00170
4 yylex_init [function] [call site] 00171
5 __errno_location [call site] 00172
5 __errno_location [call site] 00175
5 yy_init_globals [function] [call site] 00176
4 yy_scan_bytes [function] [call site] 00177
5 wget_error_printf_exit [function] [call site] 00179
6 exit [call site] 00180
5 yy_scan_buffer [function] [call site] 00181
6 wget_error_printf_exit [function] [call site] 00183
6 yy_switch_to_buffer [function] [call site] 00184
7 yyensure_buffer_stack [function] [call site] 00185
8 wget_error_printf_exit [function] [call site] 00187
8 yyrealloc [function] [call site] 00188
9 wget_realloc [function] [call site] 00189
8 wget_error_printf_exit [function] [call site] 00190
7 yy_load_buffer_state [function] [call site] 00191
5 wget_error_printf_exit [function] [call site] 00192
4 yylex [function] [call site] 00193
5 yyensure_buffer_stack [function] [call site] 00194
5 yy_create_buffer [function] [call site] 00195
6 wget_error_printf_exit [function] [call site] 00197
6 wget_error_printf_exit [function] [call site] 00199
6 yy_init_buffer [function] [call site] 00200
7 __errno_location [call site] 00201
7 yy_flush_buffer [function] [call site] 00202
8 yy_load_buffer_state [function] [call site] 00203
7 __errno_location [call site] 00204
5 yy_load_buffer_state [function] [call site] 00205
5 fwrite [call site] 00206
5 yy_get_previous_state [function] [call site] 00207
5 yy_try_NUL_trans [function] [call site] 00208
5 yy_get_next_buffer [function] [call site] 00209
6 wget_error_printf_exit [function] [call site] 00210
6 yyrealloc [function] [call site] 00211
6 wget_error_printf_exit [function] [call site] 00212
6 getc [call site] 00213
6 ferror [call site] 00214
6 wget_error_printf_exit [function] [call site] 00215
6 __errno_location [call site] 00216
6 fread [call site] 00217
6 clearerr [call site] 00218
6 yyrestart [function] [call site] 00219
7 yyensure_buffer_stack [function] [call site] 00220
7 yy_create_buffer [function] [call site] 00221
7 yy_init_buffer [function] [call site] 00222
7 yy_load_buffer_state [function] [call site] 00223
6 yyrealloc [function] [call site] 00224
6 wget_error_printf_exit [function] [call site] 00225
5 yy_get_previous_state [function] [call site] 00226
5 yy_get_previous_state [function] [call site] 00227
5 wget_error_printf_exit [function] [call site] 00228
4 yyget_leng [function] [call site] 00229
4 yyget_leng [function] [call site] 00231
4 yyget_text [function] [call site] 00232
4 yyget_leng [function] [call site] 00233
4 wget_strncasecmp_ascii [function] [call site] 00234
4 c_isspace [function] [call site] 00235
4 c_isspace [function] [call site] 00236
4 yyget_leng [function] [call site] 00237
4 yyget_leng [function] [call site] 00239
4 yyget_text [function] [call site] 00240
4 yyget_leng [function] [call site] 00241
4 gettext [call site] 00242
4 wget_error_printf [function] [call site] 00243
4 yyget_leng [function] [call site] 00244
4 yylex_destroy [function] [call site] 00245
5 yy_delete_buffer [function] [call site] 00246
6 yyfree [function] [call site] 00247
7 rpl_free [function] [call site] 00248
8 __errno_location [call site] 00249
8 __errno_location [call site] 00250
5 yypop_buffer_state [function] [call site] 00252
6 yy_delete_buffer [function] [call site] 00253
6 yy_load_buffer_state [function] [call site] 00254
5 yy_init_globals [function] [call site] 00257
3 css_parse_uri [function] [call site] 00259
4 wget_malloc [function] [call site] 00260
4 wget_strscpy [function] [call site] 00261
4 wget_strscpy [function] [call site] 00262
4 wget_vector_create [function] [call site] 00263
5 wget_calloc [function] [call site] 00264
5 wget_malloc [function] [call site] 00265
4 wget_vector_add [function] [call site] 00266
5 insert_element [function] [call site] 00267
6 wget_realloc [function] [call site] 00268
3 wget_strcasecmp_ascii [function] [call site] 00269
3 wget_strcasecmp_ascii [function] [call site] 00270
3 c_isspace [function] [call site] 00271
3 wget_strncasecmp_ascii [function] [call site] 00272
3 wget_strncasecmp_ascii [function] [call site] 00273
3 wget_strncasecmp_ascii [function] [call site] 00274
3 wget_strncasecmp_ascii [function] [call site] 00275
3 wget_strncasecmp_ascii [function] [call site] 00276
3 wget_strncasecmp_ascii [function] [call site] 00277
3 wget_vector_get [function] [call site] 00278
3 wget_strcasecmp_ascii [function] [call site] 00279
3 wget_strcasecmp_ascii [function] [call site] 00280
3 c_isspace [function] [call site] 00281
3 c_isspace [function] [call site] 00282
3 wget_vector_get [function] [call site] 00283
3 bsearch [call site] 00284
3 wget_strcasecmp_ascii [function] [call site] 00285
3 wget_vector_find [function] [call site] 00286
3 wget_vector_find [function] [call site] 00287
3 c_isspace [function] [call site] 00288
3 c_isspace [function] [call site] 00289
3 wget_strcasecmp_ascii [function] [call site] 00290
3 wget_vector_create [function] [call site] 00291
3 wget_strcasecmp_ascii [function] [call site] 00292
3 c_isspace [function] [call site] 00293
3 c_isspace [function] [call site] 00294
3 wget_strncasecmp_ascii [function] [call site] 00295
3 c_isspace [function] [call site] 00296
3 wget_strscpy [function] [call site] 00297
3 wget_strscpy [function] [call site] 00298
3 wget_vector_add_memdup [function] [call site] 00299
4 wget_memdup [function] [call site] 00300
5 wget_malloc [function] [call site] 00301
4 insert_element [function] [call site] 00302
3 wget_strscpy [function] [call site] 00303
3 wget_strscpy [function] [call site] 00304
3 wget_vector_add_memdup [function] [call site] 00305
3 wget_strcasecmp_ascii [function] [call site] 00306
3 wget_css_parse_buffer [function] [call site] 00307
3 css_parse_uri [function] [call site] 00308
2 wget_memdup [function] [call site] 00309
1 wget_html_free_urls_inline [function] [call site] 00310
2 wget_vector_free [function] [call site] 00311
3 wget_vector_clear [function] [call site] 00312