Fuzz introspector: libwget_css_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
91 91 1 :

['wget_str_to_utf8']

91 91 wget_iri_parse call site: 00269 /src/wget2/libwget/iri.c:670
82 82 8 :

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

82 82 yy_get_next_buffer call site: 00313 /src/wget2/libwget/css_tokenizer.c:3108
4 4 2 :

['strrchr', 'strlen']

372 1177 wget_iri_parse call site: 00030 /src/wget2/libwget/iri.c:600
2 16 2 :

['c_isdigit', 'atoi']

368 1173 wget_iri_parse call site: 00032 /src/wget2/libwget/iri.c:616
2 2 1 :

['strchr']

374 1179 wget_iri_parse call site: 00029 /src/wget2/libwget/iri.c:591
2 2 1 :

['strlen']

8 650 wget_iri_relative_to_abs call site: 00375 /src/wget2/libwget/iri.c:874
2 2 1 :

['__errno_location']

2 2 yylex_init call site: 00276 /src/wget2/libwget/css_tokenizer.c:3920
0 153 1 :

['wget_buffer_printf_append']

0 153 wget_iri_get_connection_part call site: 00465 /src/wget2/libwget/iri.c:763
0 67 1 :

['wget_iri_unescape_inline']

378 1250 wget_iri_parse call site: 00025 /src/wget2/libwget/iri.c:578
0 0 None 586 645 wget_buffer_vprintf_append call site: 00404 /src/wget2/libwget/buffer_printf.c:346
0 0 None 586 645 wget_buffer_vprintf_append call site: 00405 /src/wget2/libwget/buffer_printf.c:359
0 0 None 384 1687 wget_iri_parse call site: 00002 /src/wget2/libwget/iri.c:439

Fuzzer calltree

0 LLVMFuzzerTestOneInput [function] [call site] 00000
1 __assert_fail [call site] 00001
1 wget_iri_parse [function] [call site] 00002
2 c_isspace [function] [call site] 00003
2 c_isalpha [function] [call site] 00004
2 c_isalnum [function] [call site] 00005
2 c_isdigit [function] [call site] 00006
2 strlen [call site] 00007
2 wget_malloc [function] [call site] 00008
2 strchr [call site] 00009
2 wget_iri_unescape_inline [function] [call site] 00010
3 iri_unescape_inline [function] [call site] 00011
2 wget_strtolower [function] [call site] 00017
2 strcmp [call site] 00020
2 wget_debug_printf [function] [call site] 00021
2 wget_iri_free [function] [call site] 00022
3 wget_iri_free_content [function] [call site] 00023
2 wget_iri_unescape_inline [function] [call site] 00024
2 wget_iri_unescape_inline [function] [call site] 00025
2 strlen [call site] 00026
2 wget_iri_unescape_inline [function] [call site] 00027
2 wget_debug_printf [function] [call site] 00028
2 strchr [call site] 00029
2 strchr [call site] 00030
2 strrchr [call site] 00031
2 strlen [call site] 00032
2 c_isdigit [function] [call site] 00033
2 atoi [call site] 00034
2 wget_strtolower [function] [call site] 00035
2 wget_str_needs_encoding [function] [call site] 00036
2 wget_str_to_utf8 [function] [call site] 00037
3 wget_striconv [function] [call site] 00038
4 strlen [call site] 00039
4 wget_memiconv [function] [call site] 00040
5 wget_strcasecmp_ascii [function] [call site] 00041
6 c_strcasecmp [function] [call site] 00042
5 iconv_open [call site] 00045
5 wget_malloc [function] [call site] 00046
5 iconv_close [call site] 00047
5 __errno_location [call site] 00048
5 iconv [call site] 00049
5 iconv [call site] 00050
5 wget_debug_printf [function] [call site] 00051
5 wget_realloc [function] [call site] 00052
5 gettext [call site] 00053
5 wget_error_printf [function] [call site] 00054
5 iconv_close [call site] 00055
5 gettext [call site] 00056
5 wget_error_printf [function] [call site] 00057
5 wget_strmemdup [function] [call site] 00058
6 wget_malloc [function] [call site] 00059
2 wget_str_to_ascii [function] [call site] 00060
3 wget_str_needs_encoding [function] [call site] 00061
3 idn2_lookup_u8 [function] [call site] 00062
4 set_default_flags [function] [call site] 00063
4 _tr46 [function] [call site] 00064
5 u8_strlen [function] [call site] 00065
6 strlen [call site] 00066
5 u8_to_u32 [function] [call site] 00067
6 u8_mbtoucr [function] [call site] 00068
6 libunistring_rpl_free [function] [call site] 00069
7 __errno_location [call site] 00070
7 __errno_location [call site] 00071
6 __errno_location [call site] 00072
6 realloc [call site] 00073
6 libunistring_rpl_free [function] [call site] 00074
6 __errno_location [call site] 00075
6 __errno_location [call site] 00076
6 realloc [call site] 00077
5 __errno_location [call site] 00078
5 get_idna_map [function] [call site] 00079
6 bsearch [call site] 00080
6 _compare_idna_map [function] [call site] 00081
7 _fill_map [function] [call site] 00082
6 bsearch [call site] 00083
6 _compare_idna_map [function] [call site] 00084
6 bsearch [call site] 00085
6 _compare_idna_map [function] [call site] 00086
6 _fill_map [function] [call site] 00087
5 get_idna_map [function] [call site] 00098
5 get_map_data [function] [call site] 00101
5 get_map_data [function] [call site] 00105
5 get_map_data [function] [call site] 00108
5 u32_normalize [function] [call site] 00110
6 u32_mbtouc_unsafe [function] [call site] 00111
6 abort [call site] 00112
6 abort [call site] 00113
6 uc_combining_class [function] [call site] 00114
6 libunistring_gl_uninorm_decompose_merge_sort_inplace [function] [call site] 00115
7 libunistring_gl_uninorm_decompose_merge_sort_inplace [function] [call site] 00116
8 gl_uninorm_decompose_merge_sort_fromto [function] [call site] 00117
9 gl_uninorm_decompose_merge_sort_fromto [function] [call site] 00118
10 gl_uninorm_decompose_merge_sort_fromto [function] [call site] 00119
6 u32_uctomb [function] [call site] 00122
6 __errno_location [call site] 00123
6 abort [call site] 00124
6 __errno_location [call site] 00125
6 __errno_location [call site] 00126
6 realloc [call site] 00128
6 __errno_location [call site] 00129
6 u32_uctomb [function] [call site] 00130
6 __errno_location [call site] 00131
6 abort [call site] 00132
6 abort [call site] 00133
6 __errno_location [call site] 00134
6 libunistring_rpl_free [function] [call site] 00135
6 __errno_location [call site] 00136
6 realloc [call site] 00137
6 abort [call site] 00138
6 libunistring_rpl_free [function] [call site] 00139
6 __errno_location [call site] 00140
6 libunistring_rpl_free [function] [call site] 00141
6 libunistring_rpl_free [function] [call site] 00142
6 __errno_location [call site] 00143
5 __errno_location [call site] 00145
5 u32_to_u8 [function] [call site] 00146
6 u8_uctomb [function] [call site] 00147
6 libunistring_rpl_free [function] [call site] 00148
6 __errno_location [call site] 00149
6 realloc [call site] 00150
6 libunistring_rpl_free [function] [call site] 00151
6 u8_uctomb [function] [call site] 00152
6 abort [call site] 00153
6 __errno_location [call site] 00154
6 realloc [call site] 00155
5 __errno_location [call site] 00157
5 idn2_punycode_decode [function] [call site] 00158
5 _idn2_label_test [function] [call site] 00163
6 u32_normalize [function] [call site] 00164
6 memcmp [call site] 00165
6 uc_is_general_category [function] [call site] 00167
7 bitmap_lookup [function] [call site] 00168
6 _idn2_disallowed_p [function] [call site] 00169
7 property [function] [call site] 00170
8 bsearch [call site] 00171
6 get_idna_map [function] [call site] 00173
6 _idn2_contextj_p [function] [call site] 00176
6 _idn2_contextj_rule [function] [call site] 00178
7 _idn2_contextj_p [function] [call site] 00179
7 uc_combining_class [function] [call site] 00180
7 uc_joining_type [function] [call site] 00181
8 uc_is_general_category_withtable [function] [call site] 00182
9 lookup_withtable [function] [call site] 00183
7 uc_joining_type [function] [call site] 00184
7 uc_combining_class [function] [call site] 00185
6 _idn2_contexto_p [function] [call site] 00186
6 _idn2_contexto_p [function] [call site] 00188
6 _idn2_contexto_with_rule [function] [call site] 00189
6 _idn2_contexto_rule [function] [call site] 00190
7 _idn2_contexto_p [function] [call site] 00191
7 _uc_script_name [function] [call site] 00192
8 uc_script [function] [call site] 00193
7 strcmp [call site] 00194
7 _uc_script_name [function] [call site] 00195
7 strcmp [call site] 00196
7 _uc_script_name [function] [call site] 00197
7 strcmp [call site] 00198
7 _uc_script_name [function] [call site] 00199
7 strcmp [call site] 00200
7 _uc_script_name [function] [call site] 00201
7 strcmp [call site] 00202
6 _idn2_unassigned_p [function] [call site] 00203
6 _idn2_bidi [function] [call site] 00205
7 _isBidi [function] [call site] 00206
8 uc_bidi_category [function] [call site] 00207
9 uc_bidi_class [function] [call site] 00208
7 uc_bidi_category [function] [call site] 00209
7 uc_bidi_category [function] [call site] 00210
7 uc_bidi_category [function] [call site] 00211
6 get_idna_map [function] [call site] 00212
5 _idn2_label_test [function] [call site] 00216
5 u32_to_u8 [function] [call site] 00217
5 __errno_location [call site] 00219
4 strchrnul [call site] 00221
4 label [function] [call site] 00222
5 _idn2_ascii_p [function] [call site] 00223
5 memcmp [call site] 00224
5 idn2_punycode_decode [function] [call site] 00225
5 u32_to_u8 [function] [call site] 00226
5 __errno_location [call site] 00227
5 _idn2_u8_to_u32_nfc [function] [call site] 00228
6 u8_to_u32 [function] [call site] 00229
6 __errno_location [call site] 00230
6 _isNFC [function] [call site] 00231
7 uc_combining_class [function] [call site] 00232
7 get_nfcqc_map [function] [call site] 00233
8 bsearch [call site] 00234
8 _compare_nfcqc_map [function] [call site] 00235
6 u32_normalize [function] [call site] 00236
6 __errno_location [call site] 00238
5 _idn2_label_test [function] [call site] 00239
5 idn2_punycode_encode [function] [call site] 00240
6 encode_digit [function] [call site] 00241
6 encode_digit [function] [call site] 00242
5 c_strncasecmp [function] [call site] 00244
5 idn2_punycode_decode [function] [call site] 00247
3 idn2_lookup_u8 [function] [call site] 00255
3 wget_debug_printf [function] [call site] 00256
3 gettext [call site] 00257
3 idn2_strerror [function] [call site] 00258
3 wget_error_printf [function] [call site] 00259
2 wget_ip_is_family [function] [call site] 00260
3 inet_pton [call site] 00261
2 gettext [call site] 00262
2 wget_error_printf [function] [call site] 00263
2 wget_iri_free [function] [call site] 00264
2 wget_str_needs_encoding [function] [call site] 00265
2 wget_str_to_utf8 [function] [call site] 00266
2 wget_str_needs_encoding [function] [call site] 00267
2 wget_str_to_utf8 [function] [call site] 00268
2 wget_str_needs_encoding [function] [call site] 00269
2 wget_str_to_utf8 [function] [call site] 00270
1 __assert_fail [call site] 00271
1 wget_css_get_urls [function] [call site] 00272
2 wget_css_parse_buffer [function] [call site] 00273
3 yylex_init [function] [call site] 00274
4 __errno_location [call site] 00275
4 __errno_location [call site] 00278
4 yy_init_globals [function] [call site] 00279
3 yy_scan_bytes [function] [call site] 00280
4 wget_error_printf_exit [function] [call site] 00282
5 exit [call site] 00283
4 yy_scan_buffer [function] [call site] 00284
5 wget_error_printf_exit [function] [call site] 00286
5 yy_switch_to_buffer [function] [call site] 00287
6 yyensure_buffer_stack [function] [call site] 00288
7 wget_error_printf_exit [function] [call site] 00290
7 yyrealloc [function] [call site] 00291
8 wget_realloc [function] [call site] 00292
7 wget_error_printf_exit [function] [call site] 00293
6 yy_load_buffer_state [function] [call site] 00294
4 wget_error_printf_exit [function] [call site] 00295
3 yylex [function] [call site] 00296
4 yyensure_buffer_stack [function] [call site] 00297
4 yy_create_buffer [function] [call site] 00298
5 wget_error_printf_exit [function] [call site] 00300
5 wget_error_printf_exit [function] [call site] 00302
5 yy_init_buffer [function] [call site] 00303
6 __errno_location [call site] 00304
6 yy_flush_buffer [function] [call site] 00305
7 yy_load_buffer_state [function] [call site] 00306
6 __errno_location [call site] 00307
4 yy_load_buffer_state [function] [call site] 00308
4 fwrite [call site] 00309
4 yy_get_previous_state [function] [call site] 00310
4 yy_try_NUL_trans [function] [call site] 00311
4 yy_get_next_buffer [function] [call site] 00312
5 wget_error_printf_exit [function] [call site] 00313
5 yyrealloc [function] [call site] 00314
5 wget_error_printf_exit [function] [call site] 00315
5 getc [call site] 00316
5 wget_error_printf_exit [function] [call site] 00317
5 yyrestart [function] [call site] 00318
6 yyensure_buffer_stack [function] [call site] 00319
6 yy_create_buffer [function] [call site] 00320
6 yy_init_buffer [function] [call site] 00321
6 yy_load_buffer_state [function] [call site] 00322
5 yyrealloc [function] [call site] 00323
5 wget_error_printf_exit [function] [call site] 00324
4 yy_get_previous_state [function] [call site] 00325
4 yy_get_previous_state [function] [call site] 00326
4 wget_error_printf_exit [function] [call site] 00327
3 yyget_leng [function] [call site] 00328
3 yyget_leng [function] [call site] 00330
3 yyget_text [function] [call site] 00331
3 yyget_leng [function] [call site] 00332
3 wget_strncasecmp_ascii [function] [call site] 00333
4 c_strncasecmp [function] [call site] 00334
3 c_isspace [function] [call site] 00335
3 c_isspace [function] [call site] 00336
3 yyget_leng [function] [call site] 00337
3 yyget_leng [function] [call site] 00339
3 yyget_text [function] [call site] 00340
3 yyget_leng [function] [call site] 00341
3 gettext [call site] 00342
3 wget_error_printf [function] [call site] 00343
3 yyget_leng [function] [call site] 00344
3 yylex_destroy [function] [call site] 00345
4 yypop_buffer_state [function] [call site] 00350
5 yy_delete_buffer [function] [call site] 00351
5 yy_load_buffer_state [function] [call site] 00352
4 yy_init_globals [function] [call site] 00355
2 get_url [function] [call site] 00357
3 wget_calloc [function] [call site] 00358
3 wget_strmemdup [function] [call site] 00359
3 wget_vector_create [function] [call site] 00360
4 wget_calloc [function] [call site] 00361
4 wget_malloc [function] [call site] 00362
3 wget_vector_set_destructor [function] [call site] 00364
3 wget_vector_add [function] [call site] 00366
4 insert_element [function] [call site] 00367
5 wget_realloc [function] [call site] 00368
2 urls_to_absolute [function] [call site] 00369
3 wget_buffer_init [function] [call site] 00370
4 wget_malloc [function] [call site] 00371
3 wget_vector_size [function] [call site] 00372
3 wget_vector_get [function] [call site] 00373
3 wget_iri_relative_to_abs [function] [call site] 00374
4 wget_debug_printf [function] [call site] 00375
4 strlen [call site] 00376
4 wget_malloc [function] [call site] 00377
4 wget_strscpy [function] [call site] 00378
4 strchr [call site] 00379
4 normalize_path [function] [call site] 00380
5 wget_debug_printf [function] [call site] 00381
5 strncmp [call site] 00382
5 strcmp [call site] 00383
5 strncmp [call site] 00384
5 strcmp [call site] 00385
5 strlen [call site] 00386
5 wget_debug_printf [function] [call site] 00387
4 wget_buffer_strcpy [function] [call site] 00388
5 strlen [call site] 00389
5 wget_buffer_memcat [function] [call site] 00390
6 buffer_realloc [function] [call site] 00391
7 wget_realloc [function] [call site] 00392
7 wget_malloc [function] [call site] 00393
4 wget_buffer_strcat [function] [call site] 00394
5 strlen [call site] 00395
5 wget_buffer_memcat [function] [call site] 00396
4 wget_buffer_strcat [function] [call site] 00397
4 wget_debug_printf [function] [call site] 00398
4 normalize_path [function] [call site] 00399
4 wget_buffer_reset [function] [call site] 00400
4 wget_iri_get_connection_part [function] [call site] 00401
5 wget_ip_is_family [function] [call site] 00402
5 wget_buffer_printf_append [function] [call site] 00403
6 wget_buffer_vprintf_append [function] [call site] 00404
7 wget_buffer_memcat [function] [call site] 00405
7 wget_buffer_strcat [function] [call site] 00406
7 convert_dec_fast [function] [call site] 00407
8 wget_buffer_memcat [function] [call site] 00408
7 wget_buffer_memcat [function] [call site] 00409
7 convert_pointer [function] [call site] 00410
8 wget_buffer_memcat [function] [call site] 00411
8 wget_buffer_memcat [function] [call site] 00412
8 wget_buffer_memcat [function] [call site] 00413
7 wget_buffer_memset_append [function] [call site] 00414
8 buffer_realloc [function] [call site] 00415
7 read_flag_chars [function] [call site] 00416
7 read_field_width [function] [call site] 00417
8 c_isdigit [function] [call site] 00418
7 read_field_width [function] [call site] 00419
7 read_precision [function] [call site] 00420
7 read_precision [function] [call site] 00423
7 copy_string [function] [call site] 00424
8 wget_buffer_strcat [function] [call site] 00425
8 strnlen [call site] 00426
8 strlen [call site] 00427
8 wget_buffer_memcat [function] [call site] 00428
8 wget_buffer_memset_append [function] [call site] 00429
8 wget_buffer_memset_append [function] [call site] 00430
8 wget_buffer_memcat [function] [call site] 00431
8 wget_buffer_memcat [function] [call site] 00432
8 wget_buffer_memcat [function] [call site] 00433
7 copy_string [function] [call site] 00434
7 convert_dec [function] [call site] 00435
8 wget_buffer_memset_append [function] [call site] 00436
8 wget_buffer_memset_append [function] [call site] 00437
8 wget_buffer_memcat [function] [call site] 00438
8 wget_buffer_memset_append [function] [call site] 00439
8 wget_buffer_memcat [function] [call site] 00440
8 wget_buffer_memset_append [function] [call site] 00441
8 wget_buffer_memset_append [function] [call site] 00442
8 wget_buffer_memset_append [function] [call site] 00443
8 wget_buffer_memset_append [function] [call site] 00444
8 wget_buffer_memset_append [function] [call site] 00445
8 wget_buffer_memset_append [function] [call site] 00446
8 wget_buffer_memset_append [function] [call site] 00447
8 wget_buffer_memset_append [function] [call site] 00448
8 wget_buffer_memset_append [function] [call site] 00449
8 wget_buffer_memset_append [function] [call site] 00450
8 wget_buffer_memset_append [function] [call site] 00451
8 wget_buffer_memcat [function] [call site] 00452
8 wget_buffer_memset_append [function] [call site] 00453
8 wget_buffer_memset_append [function] [call site] 00454
8 wget_buffer_memcat [function] [call site] 00455
8 wget_buffer_memset_append [function] [call site] 00456
8 wget_buffer_memset_append [function] [call site] 00457
8 wget_buffer_memcat [function] [call site] 00458
7 convert_dec [function] [call site] 00459
7 convert_dec [function] [call site] 00460
7 convert_dec [function] [call site] 00461
7 convert_dec [function] [call site] 00462
7 convert_dec [function] [call site] 00463
7 wget_buffer_memset_append [function] [call site] 00464
5 wget_buffer_printf_append [function] [call site] 00465
5 wget_buffer_printf_append [function] [call site] 00466
4 wget_buffer_strcat [function] [call site] 00467
4 wget_buffer_strcat [function] [call site] 00468
4 wget_debug_printf [function] [call site] 00469
4 memchr [call site] 00470
4 wget_buffer_memcpy [function] [call site] 00471
5 wget_buffer_memcat [function] [call site] 00472
4 wget_debug_printf [function] [call site] 00473
4 wget_debug_printf [function] [call site] 00474
4 strrchr [call site] 00475
4 wget_buffer_reset [function] [call site] 00476
4 wget_iri_get_connection_part [function] [call site] 00477
4 wget_buffer_strcat [function] [call site] 00478
4 wget_buffer_memcat [function] [call site] 00479
4 wget_buffer_memcat [function] [call site] 00480
4 normalize_path [function] [call site] 00481
4 wget_debug_printf [function] [call site] 00482
3 wget_strmemdup [function] [call site] 00483
3 gettext [call site] 00484
3 wget_error_printf [function] [call site] 00485
3 wget_buffer_deinit [function] [call site] 00486
1 wget_vector_free [function] [call site] 00487
2 wget_vector_clear [function] [call site] 00488
1 wget_iri_free [function] [call site] 00489