Fuzz introspector: libwget_metalink_parse_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
43 43 1 :

['_idn2_contexto_rule']

43 110 _idn2_label_test call site: 00358 /src/libidn2/lib/idna.c:233
34 34 1 :

['wget_buffer_memset_append']

34 88 copy_string call site: 00047 /src/wget2/libwget/buffer_printf.c:75
25 25 1 :

['getHTMLValue']

25 25 getValue call site: 00105 /src/wget2/libwget/xml.c:251
6 927 9 :

['_idn2_label_test', 'idn2_punycode_decode', 'get_idna_map', 'malloc', 'u32_normalize', 'map_is', '__errno_location', 'get_map_data', 'u32_to_u8']

6 967 _tr46 call site: 00257 /src/libidn2/lib/lookup.c:288
6 6 1 :

['__errno_location']

6 14 u32_normalize call site: 00304 /src/libunistring/lib/uninorm/u-normalize-internal.h:345
6 6 1 :

['wget_strmemdup']

6 6 wget_memiconv call site: 00217 /src/wget2/libwget/encoding.c:76
4 4 2 :

['__errno_location', 'gettext']

6 6 wget_memiconv call site: 00221 /src/wget2/libwget/encoding.c:92
2 2 1 :

['strlen']

36 108 copy_string call site: 00045 /src/wget2/libwget/buffer_printf.c:66
2 2 1 :

['__errno_location']

2 2 _idn2_label_test call site: 00333 /src/libidn2/lib/idna.c:144
2 2 1 :

['abort']

2 2 uc_canonical_decomposition call site: 00000 /src/libunistring/lib/uninorm/canonical-decomposition.c:88
2 2 1 :

['abort']

2 2 u32_normalize call site: 00306 /src/libunistring/lib/uninorm/u-normalize-internal.h:362
2 2 1 :

['__errno_location']

2 2 u32_to_u8 call site: 00322 /src/libunistring/lib/unistr/u32-to-u8.c:111

Fuzzer calltree

0 LLVMFuzzerTestOneInput [function] [call site] 00000
1 __assert_fail [call site] 00001
1 wget_metalink_parse [function] [call site] 00002
2 wget_calloc [function] [call site] 00003
2 wget_xml_parse_buffer [function] [call site] 00004
3 parseXML [function] [call site] 00005
4 wget_strlcpy [function] [call site] 00006
5 strlen [call site] 00007
4 getContent [function] [call site] 00008
4 wget_debug_printf [function] [call site] 00009
4 getToken [function] [call site] 00010
5 strchr [call site] 00011
5 wget_debug_printf [function] [call site] 00012
4 wget_snprintf [function] [call site] 00014
5 wget_vsnprintf [function] [call site] 00015
6 wget_buffer_init [function] [call site] 00016
7 wget_malloc [function] [call site] 00017
6 wget_buffer_vprintf [function] [call site] 00018
7 wget_buffer_vprintf_append [function] [call site] 00019
8 wget_buffer_memcat [function] [call site] 00020
9 buffer_realloc [function] [call site] 00021
10 wget_realloc [function] [call site] 00022
10 wget_malloc [function] [call site] 00023
8 wget_buffer_strcat [function] [call site] 00024
9 strlen [call site] 00025
9 wget_buffer_memcat [function] [call site] 00026
8 convert_dec_fast [function] [call site] 00027
9 wget_buffer_memcat [function] [call site] 00028
8 wget_buffer_memcat [function] [call site] 00029
8 convert_pointer [function] [call site] 00030
9 wget_buffer_memcat [function] [call site] 00031
9 wget_buffer_memcat [function] [call site] 00032
9 wget_buffer_memcat [function] [call site] 00033
8 wget_buffer_memset_append [function] [call site] 00034
9 buffer_realloc [function] [call site] 00035
8 read_flag_chars [function] [call site] 00036
8 read_field_width [function] [call site] 00037
9 c_isdigit [function] [call site] 00038
8 read_field_width [function] [call site] 00039
8 read_precision [function] [call site] 00040
8 read_precision [function] [call site] 00043
8 copy_string [function] [call site] 00044
9 wget_buffer_strcat [function] [call site] 00045
9 strnlen [call site] 00046
9 strlen [call site] 00047
9 wget_buffer_memcat [function] [call site] 00048
9 wget_buffer_memset_append [function] [call site] 00049
9 wget_buffer_memset_append [function] [call site] 00050
9 wget_buffer_memcat [function] [call site] 00051
9 wget_buffer_memcat [function] [call site] 00052
9 wget_buffer_memcat [function] [call site] 00053
8 copy_string [function] [call site] 00054
8 convert_dec [function] [call site] 00055
9 wget_buffer_memset_append [function] [call site] 00056
9 wget_buffer_memset_append [function] [call site] 00057
9 wget_buffer_memcat [function] [call site] 00058
9 wget_buffer_memset_append [function] [call site] 00059
9 wget_buffer_memcat [function] [call site] 00060
9 wget_buffer_memset_append [function] [call site] 00061
9 wget_buffer_memset_append [function] [call site] 00062
9 wget_buffer_memset_append [function] [call site] 00063
9 wget_buffer_memset_append [function] [call site] 00064
9 wget_buffer_memset_append [function] [call site] 00065
9 wget_buffer_memset_append [function] [call site] 00066
9 wget_buffer_memset_append [function] [call site] 00067
9 wget_buffer_memset_append [function] [call site] 00068
9 wget_buffer_memset_append [function] [call site] 00069
9 wget_buffer_memset_append [function] [call site] 00070
9 wget_buffer_memset_append [function] [call site] 00071
9 wget_buffer_memcat [function] [call site] 00072
9 wget_buffer_memset_append [function] [call site] 00073
9 wget_buffer_memcat [function] [call site] 00074
9 wget_buffer_memset_append [function] [call site] 00075
9 wget_buffer_memset_append [function] [call site] 00076
9 wget_buffer_memcat [function] [call site] 00077
8 convert_dec [function] [call site] 00078
8 convert_dec [function] [call site] 00079
8 convert_dec [function] [call site] 00080
8 convert_dec [function] [call site] 00081
8 convert_dec [function] [call site] 00082
8 wget_buffer_memset_append [function] [call site] 00083
6 wget_buffer_deinit [function] [call site] 00084
6 wget_buffer_deinit [function] [call site] 00085
4 wget_snprintf [function] [call site] 00086
4 strncmp [call site] 00088
4 wget_strcasecmp_ascii [function] [call site] 00089
5 c_strcasecmp [function] [call site] 00090
4 wget_debug_printf [function] [call site] 00093
4 getScriptContent [function] [call site] 00094
5 strncmp [call site] 00095
5 strncmp [call site] 00096
5 wget_strncasecmp_ascii [function] [call site] 00097
6 c_strncasecmp [function] [call site] 00098
4 wget_debug_printf [function] [call site] 00099
4 wget_strcasecmp_ascii [function] [call site] 00100
4 getStyleContent [function] [call site] 00101
5 wget_strncasecmp_ascii [function] [call site] 00102
4 wget_debug_printf [function] [call site] 00103
4 parseXML [function] [call site] 00104
5 getValue [function] [call site] 00105
6 getHTMLValue [function] [call site] 00106
7 strchr [call site] 00107
7 wget_debug_printf [function] [call site] 00108
5 wget_debug_printf [function] [call site] 00110
5 wget_debug_printf [function] [call site] 00111
5 strncmp [call site] 00112
5 wget_malloc [function] [call site] 00114
5 strncmp [call site] 00116
5 getProcessing [function] [call site] 00117
6 getUnparsed [function] [call site] 00118
5 wget_debug_printf [function] [call site] 00119
5 strncmp [call site] 00120
5 getSpecial [function] [call site] 00121
6 getUnparsed [function] [call site] 00122
5 wget_debug_printf [function] [call site] 00123
5 strncmp [call site] 00124
5 getComment [function] [call site] 00125
6 getUnparsed [function] [call site] 00126
5 wget_debug_printf [function] [call site] 00127
2 metalink_parse [function] [call site] 00128
3 wget_strncasecmp_ascii [function] [call site] 00129
3 wget_strmemcpy_a [function] [call site] 00130
4 wget_malloc [function] [call site] 00131
3 wget_strncasecmp_ascii [function] [call site] 00132
3 wget_strcasecmp_ascii [function] [call site] 00133
3 wget_strdup [function] [call site] 00134
4 strlen [call site] 00135
4 wget_memdup [function] [call site] 00136
5 wget_malloc [function] [call site] 00137
3 wget_strcasecmp_ascii [function] [call site] 00138
3 wget_strcasecmp_ascii [function] [call site] 00139
3 __isoc99_sscanf [call site] 00140
3 wget_strcasecmp_ascii [function] [call site] 00141
3 atoll [call site] 00142
3 wget_strcasecmp_ascii [function] [call site] 00143
3 wget_strcasecmp_ascii [function] [call site] 00144
3 __isoc99_sscanf [call site] 00145
3 wget_strcasecmp_ascii [function] [call site] 00146
3 wget_strcasecmp_ascii [function] [call site] 00147
3 __isoc99_sscanf [call site] 00148
3 wget_strcasecmp_ascii [function] [call site] 00149
3 __isoc99_sscanf [call site] 00150
3 wget_strcasecmp_ascii [function] [call site] 00151
3 add_piece [function] [call site] 00152
4 __isoc99_sscanf [call site] 00153
4 wget_vector_create [function] [call site] 00154
5 wget_calloc [function] [call site] 00155
5 wget_malloc [function] [call site] 00156
5 rpl_free [function] [call site] 00157
6 __errno_location [call site] 00158
6 __errno_location [call site] 00159
4 wget_strscpy [function] [call site] 00160
4 wget_strscpy [function] [call site] 00161
4 wget_vector_size [function] [call site] 00162
4 wget_vector_add_memdup [function] [call site] 00163
5 wget_memdup [function] [call site] 00164
5 insert_element [function] [call site] 00165
6 wget_realloc [function] [call site] 00166
3 wget_strcasecmp_ascii [function] [call site] 00167
3 add_file_hash [function] [call site] 00168
4 __isoc99_sscanf [call site] 00169
4 wget_strscpy [function] [call site] 00170
4 wget_strscpy [function] [call site] 00171
4 wget_vector_create [function] [call site] 00172
4 wget_vector_add_memdup [function] [call site] 00173
3 wget_strcasecmp_ascii [function] [call site] 00174
3 atoll [call site] 00175
3 wget_strcasecmp_ascii [function] [call site] 00176
3 add_mirror [function] [call site] 00177
4 wget_iri_parse [function] [call site] 00178
5 c_isspace [function] [call site] 00179
5 c_isalpha [function] [call site] 00180
5 c_isalnum [function] [call site] 00181
5 c_isdigit [function] [call site] 00182
5 strlen [call site] 00183
5 wget_malloc [function] [call site] 00184
5 strchr [call site] 00185
5 wget_iri_unescape_inline [function] [call site] 00186
6 iri_unescape_inline [function] [call site] 00187
5 wget_strtolower [function] [call site] 00193
5 strcmp [call site] 00196
5 wget_debug_printf [function] [call site] 00197
5 wget_iri_free [function] [call site] 00198
6 wget_iri_free_content [function] [call site] 00199
5 wget_iri_unescape_inline [function] [call site] 00200
5 wget_iri_unescape_inline [function] [call site] 00201
5 strlen [call site] 00202
5 wget_iri_unescape_inline [function] [call site] 00203
5 wget_debug_printf [function] [call site] 00204
5 strchr [call site] 00205
5 strchr [call site] 00206
5 strrchr [call site] 00207
5 strlen [call site] 00208
5 c_isdigit [function] [call site] 00209
5 atoi [call site] 00210
5 wget_strtolower [function] [call site] 00211
5 wget_str_needs_encoding [function] [call site] 00212
5 wget_str_to_utf8 [function] [call site] 00213
6 wget_striconv [function] [call site] 00214
7 strlen [call site] 00215
7 wget_memiconv [function] [call site] 00216
8 wget_strcasecmp_ascii [function] [call site] 00217
8 wget_malloc [function] [call site] 00218
8 iconv_close [call site] 00219
8 __errno_location [call site] 00220
8 iconv [call site] 00221
8 iconv [call site] 00222
8 wget_debug_printf [function] [call site] 00223
8 wget_realloc [function] [call site] 00224
8 gettext [call site] 00225
8 wget_error_printf [function] [call site] 00226
8 iconv_close [call site] 00227
8 gettext [call site] 00228
8 wget_error_printf [function] [call site] 00229
8 wget_strmemdup [function] [call site] 00230
9 wget_malloc [function] [call site] 00231
5 wget_str_to_ascii [function] [call site] 00232
6 wget_str_needs_encoding [function] [call site] 00233
6 idn2_lookup_u8 [function] [call site] 00234
7 set_default_flags [function] [call site] 00235
7 _tr46 [function] [call site] 00236
8 u8_strlen [function] [call site] 00237
9 strlen [call site] 00238
8 u8_to_u32 [function] [call site] 00239
9 u8_mbtoucr [function] [call site] 00240
9 libunistring_rpl_free [function] [call site] 00241
9 __errno_location [call site] 00242
9 realloc [call site] 00243
9 libunistring_rpl_free [function] [call site] 00244
9 __errno_location [call site] 00245
9 __errno_location [call site] 00246
9 realloc [call site] 00247
8 __errno_location [call site] 00248
8 get_idna_map [function] [call site] 00249
9 _compare_idna_map [function] [call site] 00250
10 _fill_map [function] [call site] 00251
9 bsearch [call site] 00252
9 _compare_idna_map [function] [call site] 00253
9 bsearch [call site] 00254
9 _compare_idna_map [function] [call site] 00255
9 _fill_map [function] [call site] 00256
8 get_idna_map [function] [call site] 00267
8 get_map_data [function] [call site] 00270
8 get_map_data [function] [call site] 00274
8 get_map_data [function] [call site] 00277
8 u32_normalize [function] [call site] 00279
9 u32_mbtouc_unsafe [function] [call site] 00280
9 abort [call site] 00281
9 abort [call site] 00282
9 uc_combining_class [function] [call site] 00283
9 libunistring_gl_uninorm_decompose_merge_sort_inplace [function] [call site] 00284
10 libunistring_gl_uninorm_decompose_merge_sort_inplace [function] [call site] 00285
11 gl_uninorm_decompose_merge_sort_fromto [function] [call site] 00286
12 gl_uninorm_decompose_merge_sort_fromto [function] [call site] 00287
13 gl_uninorm_decompose_merge_sort_fromto [function] [call site] 00288
9 u32_uctomb [function] [call site] 00291
9 __errno_location [call site] 00292
9 abort [call site] 00293
9 __errno_location [call site] 00294
9 __errno_location [call site] 00295
9 realloc [call site] 00297
9 __errno_location [call site] 00298
9 u32_uctomb [function] [call site] 00299
9 __errno_location [call site] 00300
9 abort [call site] 00301
9 abort [call site] 00302
9 __errno_location [call site] 00303
9 libunistring_rpl_free [function] [call site] 00304
9 __errno_location [call site] 00305
9 realloc [call site] 00306
9 abort [call site] 00307
9 libunistring_rpl_free [function] [call site] 00308
9 __errno_location [call site] 00309
9 libunistring_rpl_free [function] [call site] 00310
9 libunistring_rpl_free [function] [call site] 00311
9 __errno_location [call site] 00312
8 __errno_location [call site] 00314
8 u32_to_u8 [function] [call site] 00315
9 u8_uctomb [function] [call site] 00316
9 libunistring_rpl_free [function] [call site] 00317
9 __errno_location [call site] 00318
9 realloc [call site] 00319
9 libunistring_rpl_free [function] [call site] 00320
9 u8_uctomb [function] [call site] 00321
9 abort [call site] 00322
9 __errno_location [call site] 00323
9 realloc [call site] 00324
8 __errno_location [call site] 00326
8 idn2_punycode_decode [function] [call site] 00327
8 _idn2_label_test [function] [call site] 00332
9 u32_normalize [function] [call site] 00333
9 memcmp [call site] 00334
9 uc_is_general_category [function] [call site] 00336
10 bitmap_lookup [function] [call site] 00337
9 _idn2_disallowed_p [function] [call site] 00338
10 property [function] [call site] 00339
11 bsearch [call site] 00340
11 _compare [function] [call site] 00341
9 get_idna_map [function] [call site] 00342
9 _idn2_contextj_p [function] [call site] 00345
10 property [function] [call site] 00346
9 _idn2_contextj_rule [function] [call site] 00347
10 _idn2_contextj_p [function] [call site] 00348
10 uc_combining_class [function] [call site] 00349
10 uc_joining_type [function] [call site] 00350
11 uc_is_general_category_withtable [function] [call site] 00351
12 lookup_withtable [function] [call site] 00352
10 uc_joining_type [function] [call site] 00353
10 uc_combining_class [function] [call site] 00354
9 _idn2_contexto_p [function] [call site] 00355
10 property [function] [call site] 00356
9 _idn2_contexto_p [function] [call site] 00357
9 _idn2_contexto_with_rule [function] [call site] 00358
9 _idn2_contexto_rule [function] [call site] 00359
10 _idn2_contexto_p [function] [call site] 00360
10 _uc_script_name [function] [call site] 00361
11 uc_script [function] [call site] 00362
10 strcmp [call site] 00363
10 _uc_script_name [function] [call site] 00364
10 strcmp [call site] 00365
10 _uc_script_name [function] [call site] 00366
10 strcmp [call site] 00367
10 _uc_script_name [function] [call site] 00368
10 strcmp [call site] 00369
10 _uc_script_name [function] [call site] 00370
9 _idn2_unassigned_p [function] [call site] 00371
10 property [function] [call site] 00372
9 _idn2_bidi [function] [call site] 00373
10 _isBidi [function] [call site] 00374
11 uc_bidi_category [function] [call site] 00375
12 uc_bidi_class [function] [call site] 00376
10 uc_bidi_category [function] [call site] 00377
10 uc_bidi_category [function] [call site] 00378
10 uc_bidi_category [function] [call site] 00379
9 get_idna_map [function] [call site] 00380
8 _idn2_label_test [function] [call site] 00384
8 u32_to_u8 [function] [call site] 00385
8 __errno_location [call site] 00387
7 strchrnul [call site] 00389
7 label [function] [call site] 00390
8 _idn2_ascii_p [function] [call site] 00391
8 memcmp [call site] 00392
8 idn2_punycode_decode [function] [call site] 00393
8 u32_to_u8 [function] [call site] 00394
8 __errno_location [call site] 00395
8 _idn2_u8_to_u32_nfc [function] [call site] 00396
9 u8_to_u32 [function] [call site] 00397
9 __errno_location [call site] 00398
9 _isNFC [function] [call site] 00399
10 uc_combining_class [function] [call site] 00400
10 get_nfcqc_map [function] [call site] 00401
11 bsearch [call site] 00402
11 _compare_nfcqc_map [function] [call site] 00403
9 u32_normalize [function] [call site] 00404
8 _idn2_label_test [function] [call site] 00406
8 idn2_punycode_encode [function] [call site] 00407
9 encode_digit [function] [call site] 00408
9 encode_digit [function] [call site] 00409
8 c_strncasecmp [function] [call site] 00411
8 idn2_punycode_decode [function] [call site] 00414
6 idn2_lookup_u8 [function] [call site] 00422
6 wget_debug_printf [function] [call site] 00423
6 gettext [call site] 00424
6 idn2_strerror [function] [call site] 00425
6 wget_error_printf [function] [call site] 00426
5 wget_ip_is_family [function] [call site] 00427
6 inet_pton [call site] 00428
5 gettext [call site] 00429
5 wget_error_printf [function] [call site] 00430
5 wget_iri_free [function] [call site] 00431
5 wget_str_needs_encoding [function] [call site] 00432
5 wget_str_to_utf8 [function] [call site] 00433
5 wget_str_needs_encoding [function] [call site] 00434
5 wget_str_to_utf8 [function] [call site] 00435
5 wget_str_needs_encoding [function] [call site] 00436
5 wget_str_to_utf8 [function] [call site] 00437
4 wget_iri_supported [function] [call site] 00438
4 gettext [call site] 00439
4 wget_error_printf [function] [call site] 00440
4 wget_iri_free [function] [call site] 00441
4 wget_calloc [function] [call site] 00442
4 wget_strscpy [function] [call site] 00443
4 wget_vector_create [function] [call site] 00444
4 wget_vector_set_destructor [function] [call site] 00445
4 mirror_free [function] [call site] 00446
5 wget_iri_free [function] [call site] 00447
4 wget_vector_add [function] [call site] 00448
5 insert_element [function] [call site] 00449
3 wget_strcasecmp_ascii [function] [call site] 00450
3 wget_strdup [function] [call site] 00451
3 wget_strcasecmp_ascii [function] [call site] 00452
3 wget_strcasecmp_ascii [function] [call site] 00453
3 __isoc99_sscanf [call site] 00454
3 wget_strcasecmp_ascii [function] [call site] 00455
3 atoll [call site] 00456
3 wget_strcasecmp_ascii [function] [call site] 00457
3 wget_strcasecmp_ascii [function] [call site] 00458
3 __isoc99_sscanf [call site] 00459
3 wget_strcasecmp_ascii [function] [call site] 00460
3 wget_strcasecmp_ascii [function] [call site] 00461
3 __isoc99_sscanf [call site] 00462
3 wget_strcasecmp_ascii [function] [call site] 00463
3 __isoc99_sscanf [call site] 00464
3 wget_strcasecmp_ascii [function] [call site] 00465
3 add_piece [function] [call site] 00466
3 wget_strcasecmp_ascii [function] [call site] 00467
3 add_file_hash [function] [call site] 00468
3 wget_strcasecmp_ascii [function] [call site] 00469
3 atoll [call site] 00470
3 wget_strcasecmp_ascii [function] [call site] 00471
3 add_mirror [function] [call site] 00472
2 gettext [call site] 00473
2 wget_error_printf [function] [call site] 00474
2 wget_metalink_free [function] [call site] 00475
3 wget_vector_free [function] [call site] 00476
4 wget_vector_clear [function] [call site] 00477
3 wget_vector_free [function] [call site] 00478
3 wget_vector_free [function] [call site] 00479
1 wget_metalink_sort_mirrors [function] [call site] 00480
2 wget_vector_setcmpfunc [function] [call site] 00481
2 compare_mirror [function] [call site] 00482
2 wget_vector_sort [function] [call site] 00483
3 qsort_r [call site] 00484
3 compare_element [function] [call site] 00485
1 wget_metalink_free [function] [call site] 00486