Fuzz introspector: curl_fuzzer/fuzz_bufq.cc
For issues and ideas: https://github.com/ossf/fuzz-introspector/issues

Fuzz blockers

The following nodes represent call sites where fuzz blockers occur.

Amount of callsites blocked Calltree index Parent function Callsite Largest blocked function
16 0 EP call site: 00000 fuzz_handle_bufq
13 433 ipv6_parse call site: 00433 curlx_inet_ntop
12 99 bufq_slurpn call site: 00099 Curl_bufq_pass
12 239 curl_mvsnprintf call site: 00239 curl_msnprintf
12 371 urlget_format call site: 00371 checkurl
12 416 curl_url_set call site: 00416 hostname_check
10 72 Curl_bufq_read call site: 00072 Curl_bufq_slurp
10 182 curlx_str_single call site: 00182 dollarstring
10 226 out_string call site: 00226 out_double
10 466 Curl_bufq_skip call site: 00466 Curl_bufq_write
8 59 chunk_peek_at call site: 00059 Curl_bufq_read
8 210 out_number call site: 00210 OUTCHAR

Fuzzer calltree

0 LLVMFuzzerTestOneInput [function] [call site] 00000
1 fuzz_handle_bufq [function] [call site] 00002
2 allocate_template_buffer [function] [call site] 00004
2 FuzzedDataProvider*::ConsumeIntegralInRange [function] [call site] 00009
2 FuzzedDataProvider*::ConsumeIntegralInRange [function] [call site] 00010
2 FuzzedDataProvider*::ConsumeBool [function] [call site] 00011
2 FuzzedDataProvider*::ConsumeBool [function] [call site] 00012
2 FuzzedDataProvider*::ConsumeIntegralInRange [function] [call site] 00013
2 FV_PRINTF [function] [call site] 00014
2 FV_PRINTF [function] [call site] 00015
2 Curl_bufcp_init [function] [call site] 00016
3 DEBUGASSERT [function] [call site] 00017
3 DEBUGASSERT [function] [call site] 00018
2 Curl_bufq_initp [function] [call site] 00020
2 FV_PRINTF [function] [call site] 00025
2 Curl_bufq_init [function] [call site] 00026
3 bufq_init [function] [call site] 00027
2 FuzzedDataProvider*::remaining_bytes [function] [call site] 00028
2 FuzzedDataProvider*::ConsumeIntegralInRange [function] [call site] 00029
2 Curl_bufq_is_empty [function] [call site] 00031
3 chunk_is_empty [function] [call site] 00032
2 Curl_bufq_len [function] [call site] 00034
3 chunk_len [function] [call site] 00035
2 FV_PRINTF [function] [call site] 00036
2 Curl_bufq_reset [function] [call site] 00037
2 FV_PRINTF [function] [call site] 00038
2 Curl_bufq_peek [function] [call site] 00039
3 chunk_is_empty [function] [call site] 00040
3 prune_head [function] [call site] 00041
4 chunk_is_empty [function] [call site] 00042
4 bufcp_put [function] [call site] 00043
5 curlx_free [function] [call site] 00044
5 chunk_reset [function] [call site] 00045
4 curlx_free [function] [call site] 00046
3 chunk_is_empty [function] [call site] 00047
3 chunk_peek [function] [call site] 00048
4 DEBUGASSERT [function] [call site] 00049
2 compute_buffer [function] [call site] 00050
2 FV_PRINTF [function] [call site] 00053
2 FuzzedDataProvider*::ConsumeIntegralInRange [function] [call site] 00054
2 FV_PRINTF [function] [call site] 00055
2 Curl_bufq_peek_at [function] [call site] 00056
3 chunk_len [function] [call site] 00057
3 chunk_peek_at [function] [call site] 00058
4 DEBUGASSERT [function] [call site] 00059
2 compute_buffer [function] [call site] 00060
2 FV_PRINTF [function] [call site] 00063
2 FuzzedDataProvider*::ConsumeIntegralInRange [function] [call site] 00064
2 FV_PRINTF [function] [call site] 00065
2 Curl_bufq_read [function] [call site] 00067
2 FV_PRINTF [function] [call site] 00073
2 compute_buffer [function] [call site] 00075
2 FV_PRINTF [function] [call site] 00078
2 FuzzedDataProvider*::ConsumeIntegralInRange [function] [call site] 00080
2 FV_PRINTF [function] [call site] 00081
2 Curl_bufq_slurp [function] [call site] 00082
3 bufq_slurpn [function] [call site] 00083
4 Curl_bufq_sipn [function] [call site] 00084
5 get_non_full_tail [function] [call site] 00085
6 chunk_is_full [function] [call site] 00086
6 get_spare [function] [call site] 00087
7 chunk_reset [function] [call site] 00088
7 bufcp_take [function] [call site] 00089
8 chunk_reset [function] [call site] 00090
8 curlx_calloc [function] [call site] 00091
7 curlx_calloc [function] [call site] 00092
6 DEBUGASSERT [function] [call site] 00093
5 chunk_slurpn [function] [call site] 00094
6 DEBUGASSERT [function] [call site] 00095
6 DEBUGASSERT [function] [call site] 00097
4 DEBUGASSERT [function] [call site] 00098
4 chunk_is_full [function] [call site] 00099
2 FV_PRINTF [function] [call site] 00100
2 FV_PRINTF [function] [call site] 00101
2 FuzzedDataProvider*::ConsumeIntegralInRange [function] [call site] 00103
2 FV_PRINTF [function] [call site] 00104
2 Curl_bufq_sipn [function] [call site] 00105
2 FV_PRINTF [function] [call site] 00106
2 FV_PRINTF [function] [call site] 00108
2 FuzzedDataProvider*::ConsumeIntegralInRange [function] [call site] 00109
2 FV_PRINTF [function] [call site] 00110
2 Curl_bufq_pass [function] [call site] 00111
3 Curl_bufq_peek [function] [call site] 00112
3 writer [function] [call site] 00113
4 append [function] [call site] 00114
5 curl_url [function] [call site] 00115
6 curlx_calloc [function] [call site] 00116
5 curl_url_set [function] [call site] 00117
6 urlset_clear [function] [call site] 00118
7 free_urlhandle [function] [call site] 00119
8 curlx_free [function] [call site] 00120
8 curlx_free [function] [call site] 00121
8 curlx_free [function] [call site] 00122
8 curlx_free [function] [call site] 00123
8 curlx_free [function] [call site] 00124
8 curlx_free [function] [call site] 00125
8 curlx_free [function] [call site] 00126
8 curlx_free [function] [call site] 00127
8 curlx_free [function] [call site] 00128
8 curlx_free [function] [call site] 00129
7 Curl_safefree [function] [call site] 00131
7 Curl_safefree [function] [call site] 00132
7 Curl_safefree [function] [call site] 00133
7 Curl_safefree [function] [call site] 00134
7 Curl_safefree [function] [call site] 00135
7 Curl_safefree [function] [call site] 00136
7 Curl_safefree [function] [call site] 00137
7 Curl_safefree [function] [call site] 00138
7 Curl_safefree [function] [call site] 00139
7 Curl_safefree [function] [call site] 00140
6 set_url_scheme [function] [call site] 00142
7 Curl_get_scheme [function] [call site] 00144
8 Curl_getn_scheme [function] [call site] 00145
9 Curl_raw_tolower [function] [call site] 00146
9 curl_strnequal [function] [call site] 00147
10 ncasecompare [function] [call site] 00148
11 Curl_raw_toupper [function] [call site] 00149
11 Curl_raw_toupper [function] [call site] 00150
11 Curl_raw_toupper [function] [call site] 00151
11 Curl_raw_toupper [function] [call site] 00152
6 Curl_safefree [function] [call site] 00156
6 set_url_port [function] [call site] 00157
7 curlx_str_number [function] [call site] 00159
8 str_num_base [function] [call site] 00160
9 DEBUGASSERT [function] [call site] 00161
9 DEBUGASSERT [function] [call site] 00162
9 DEBUGASSERT [function] [call site] 00163
9 valid_digit [function] [call site] 00164
9 curlx_hexval [function] [call site] 00165
9 valid_digit [function] [call site] 00166
9 curlx_hexval [function] [call site] 00167
9 valid_digit [function] [call site] 00168
7 curl_maprintf [function] [call site] 00169
8 curl_mvaprintf [function] [call site] 00171
9 curlx_dyn_init [function] [call site] 00172
10 DEBUGASSERT [function] [call site] 00173
10 DEBUGASSERT [function] [call site] 00174
10 DEBUGASSERT [function] [call site] 00175
9 formatf [function] [call site] 00176
10 parsefmt [function] [call site] 00177
11 dollarstring [function] [call site] 00179
12 curlx_str_number [function] [call site] 00180
12 curlx_str_single [function] [call site] 00181
13 DEBUGASSERT [function] [call site] 00182
11 dollarstring [function] [call site] 00183
11 curlx_str_number [function] [call site] 00184
11 FALLTHROUGH [function] [call site] 00185
11 curlx_str_number [function] [call site] 00186
11 dollarstring [function] [call site] 00187
11 FALLTHROUGH [function] [call site] 00188
11 is_arg_used [function] [call site] 00189
11 mark_arg_used [function] [call site] 00190
11 is_arg_used [function] [call site] 00191
11 mark_arg_used [function] [call site] 00192
11 mark_arg_used [function] [call site] 00193
11 is_arg_used [function] [call site] 00194
11 DEBUGASSERT [function] [call site] 00204
10 out_number [function] [call site] 00221
10 out_double [function] [call site] 00234
11 curl_msnprintf [function] [call site] 00236
12 va_start [function] [call site] 00237
12 curl_mvsnprintf [function] [call site] 00238
13 DEBUGASSERT [function] [call site] 00240
11 curl_msnprintf [function] [call site] 00242
11 curlx_win32_snprintf [function] [call site] 00243
11 snprintf [function] [call site] 00247
11 DEBUGASSERT [function] [call site] 00248
9 curlx_dyn_free [function] [call site] 00251
10 DEBUGASSERT [function] [call site] 00252
10 DEBUGASSERT [function] [call site] 00253
10 Curl_safefree [function] [call site] 00254
9 curlx_dyn_len [function] [call site] 00255
10 DEBUGASSERT [function] [call site] 00256
10 DEBUGASSERT [function] [call site] 00257
10 DEBUGASSERT [function] [call site] 00258
9 curlx_dyn_ptr [function] [call site] 00259
10 DEBUGASSERT [function] [call site] 00260
10 DEBUGASSERT [function] [call site] 00261
10 DEBUGASSERT [function] [call site] 00262
9 curlx_strdup [function] [call site] 00263
7 curlx_free [function] [call site] 00265
6 set_url [function] [call site] 00266
7 curl_url_set [function] [call site] 00268
7 curl_url_set [function] [call site] 00269
7 curl_url_strerror [function] [call site] 00274
7 curl_url_get [function] [call site] 00275
8 Curl_get_scheme [function] [call site] 00276
8 curl_msnprintf [function] [call site] 00277
8 Curl_get_scheme [function] [call site] 00278
8 urlget_url [function] [call site] 00279
9 curl_strequal [function] [call site] 00280
10 casecompare [function] [call site] 00281
11 Curl_raw_toupper [function] [call site] 00282
11 Curl_raw_toupper [function] [call site] 00283
9 curl_maprintf [function] [call site] 00284
9 Curl_get_scheme [function] [call site] 00285
9 curl_msnprintf [function] [call site] 00286
9 curlx_dyn_init [function] [call site] 00288
9 curlx_dyn_addf [function] [call site] 00289
10 DEBUGASSERT [function] [call site] 00290
10 DEBUGASSERT [function] [call site] 00291
10 DEBUGASSERT [function] [call site] 00292
10 DEBUGASSERT [function] [call site] 00293
10 va_start [function] [call site] 00295
10 curlx_dyn_vaddf [function] [call site] 00296
11 DEBUGASSERT [function] [call site] 00297
11 DEBUGASSERT [function] [call site] 00298
11 DEBUGASSERT [function] [call site] 00299
11 DEBUGASSERT [function] [call site] 00300
11 curlx_dyn_vprintf [function] [call site] 00301
12 curlx_dyn_free [function] [call site] 00303
11 curl_mvaprintf [function] [call site] 00304
11 dyn_nappend [function] [call site] 00305
12 DEBUGASSERT [function] [call site] 00306
12 DEBUGASSERT [function] [call site] 00307
12 DEBUGASSERT [function] [call site] 00308
12 DEBUGASSERT [function] [call site] 00309
12 DEBUGASSERT [function] [call site] 00310
12 DEBUGASSERT [function] [call site] 00311
12 curlx_dyn_free [function] [call site] 00312
12 DEBUGASSERT [function] [call site] 00313
12 curlx_realloc [function] [call site] 00314
12 curlx_dyn_free [function] [call site] 00315
11 curlx_free [function] [call site] 00318
11 curlx_dyn_free [function] [call site] 00319
9 curlx_dyn_ptr [function] [call site] 00321
9 curl_easy_escape [function] [call site] 00322
10 curlx_strdup [function] [call site] 00324
10 curlx_dyn_init [function] [call site] 00325
10 ISUNRESERVED [function] [call site] 00326
10 curlx_dyn_addn [function] [call site] 00327
11 DEBUGASSERT [function] [call site] 00328
11 DEBUGASSERT [function] [call site] 00329
11 DEBUGASSERT [function] [call site] 00330
11 dyn_nappend [function] [call site] 00331
10 Curl_hexbyte [function] [call site] 00332
10 curlx_dyn_addn [function] [call site] 00333
10 curlx_dyn_ptr [function] [call site] 00334
9 Curl_is_ASCII_name [function] [call site] 00335
9 host_decode [function] [call site] 00336
9 Curl_is_ASCII_name [function] [call site] 00337
9 host_encode [function] [call site] 00338
9 curl_msnprintf [function] [call site] 00339
9 curl_maprintf [function] [call site] 00340
9 curlx_free [function] [call site] 00341
8 urlget_format [function] [call site] 00342
9 curlx_memdup0 [function] [call site] 00344
10 curlx_malloc [function] [call site] 00345
10 DEBUGASSERT [function] [call site] 00346
9 Curl_urldecode [function] [call site] 00348
10 DEBUGASSERT [function] [call site] 00349
10 DEBUGASSERT [function] [call site] 00350
10 curlx_malloc [function] [call site] 00352
10 ISXDIGIT [function] [call site] 00353
10 ISXDIGIT [function] [call site] 00354
10 curlx_hexval [function] [call site] 00355
10 curlx_hexval [function] [call site] 00356
10 Curl_safefree [function] [call site] 00357
9 curlx_free [function] [call site] 00358
9 curlx_dyn_init [function] [call site] 00359
9 urlencode_str [function] [call site] 00360
10 find_host_sep [function] [call site] 00361
10 curlx_dyn_addn [function] [call site] 00363
10 curlx_dyn_addn [function] [call site] 00364
10 curlx_dyn_addn [function] [call site] 00365
10 Curl_hexbyte [function] [call site] 00366
10 curlx_dyn_addn [function] [call site] 00367
10 curlx_dyn_addn [function] [call site] 00368
9 curlx_free [function] [call site] 00370
9 curlx_dyn_ptr [function] [call site] 00371
9 Curl_is_ASCII_name [function] [call site] 00372
9 host_decode [function] [call site] 00373
9 curlx_free [function] [call site] 00374
9 Curl_is_ASCII_name [function] [call site] 00375
9 host_encode [function] [call site] 00376
9 curlx_free [function] [call site] 00377
7 curl_mfprintf [function] [call site] 00378
7 curl_url_strerror [function] [call site] 00379
7 curl_free [function] [call site] 00383
8 curlx_free [function] [call site] 00384
7 curl_mfprintf [function] [call site] 00385
7 curl_url_cleanup [function] [call site] 00386
8 free_urlhandle [function] [call site] 00387
8 curlx_free [function] [call site] 00388
6 DEBUGASSERT [function] [call site] 00389
6 curlx_dyn_init [function] [call site] 00390
6 curlx_dyn_addn [function] [call site] 00391
6 curlx_dyn_addn [function] [call site] 00393
6 ISUNRESERVED [function] [call site] 00394
6 allowed_in_path [function] [call site] 00395
6 curlx_dyn_addn [function] [call site] 00396
6 Curl_hexbyte [function] [call site] 00398
6 curlx_dyn_addn [function] [call site] 00399
6 curlx_dyn_add [function] [call site] 00401
7 DEBUGASSERT [function] [call site] 00402
7 DEBUGASSERT [function] [call site] 00403
7 DEBUGASSERT [function] [call site] 00404
7 DEBUGASSERT [function] [call site] 00405
7 dyn_nappend [function] [call site] 00407
6 curlx_dyn_ptr [function] [call site] 00409
6 Curl_raw_tolower [function] [call site] 00414
6 Curl_raw_tolower [function] [call site] 00415
6 curlx_dyn_ptr [function] [call site] 00416
6 curlx_dyn_init [function] [call site] 00418
6 curlx_dyn_addn [function] [call site] 00419
6 curlx_dyn_addn [function] [call site] 00420
6 curlx_dyn_add [function] [call site] 00421
6 curlx_dyn_free [function] [call site] 00422
6 curlx_free [function] [call site] 00423
6 curlx_dyn_ptr [function] [call site] 00424
6 curlx_dyn_free [function] [call site] 00425
6 curlx_dyn_len [function] [call site] 00426
6 Curl_urldecode [function] [call site] 00427
6 hostname_check [function] [call site] 00428
6 curlx_free [function] [call site] 00448
6 hostname_check [function] [call site] 00449
6 CURL_UNCONST [function] [call site] 00450
6 curlx_dyn_free [function] [call site] 00451
6 curlx_free [function] [call site] 00452
6 CURL_UNCONST [function] [call site] 00453
5 curl_url_set [function] [call site] 00454
5 curl_mfprintf [function] [call site] 00455
5 curl_url_get [function] [call site] 00456
5 curl_mfprintf [function] [call site] 00457
5 curl_url_strerror [function] [call site] 00458
5 curl_free [function] [call site] 00460
5 curl_url_cleanup [function] [call site] 00461
3 Curl_bufq_skip [function] [call site] 00462
4 chunk_skip [function] [call site] 00463
4 prune_head [function] [call site] 00466
2 FV_PRINTF [function] [call site] 00467
2 FV_PRINTF [function] [call site] 00468
2 FuzzedDataProvider*::ConsumeIntegralInRange [function] [call site] 00470
2 FV_PRINTF [function] [call site] 00471
2 Curl_bufq_skip [function] [call site] 00472
2 FuzzedDataProvider*::ConsumeIntegralInRange [function] [call site] 00473
2 FV_PRINTF [function] [call site] 00474
2 compute_buffer [function] [call site] 00475
2 Curl_bufq_write [function] [call site] 00476
3 DEBUGASSERT [function] [call site] 00477
3 get_non_full_tail [function] [call site] 00478
2 FV_PRINTF [function] [call site] 00483
2 FV_PRINTF [function] [call site] 00485
2 Curl_bufq_free [function] [call site] 00487
3 chunk_list_free [function] [call site] 00488
4 curlx_free [function] [call site] 00489
3 chunk_list_free [function] [call site] 00490
2 Curl_bufcp_free [function] [call site] 00491
3 chunk_list_free [function] [call site] 00492