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
14 2 LLVMFuzzerTestOneInput call site: 00002 allocate_template_buffer
12 99 bufq_slurpn call site: 00099 Curl_bufq_pass
12 390 urlget_format call site: 00390 checkurl
12 435 curl_url_set call site: 00435 hostname_check
10 72 Curl_bufq_read call site: 00072 Curl_bufq_slurp
10 247 out_string call site: 00247 out_double
10 454 ipv6_parse call site: 00454 inet_pton6
10 486 Curl_bufq_skip call site: 00486 Curl_bufq_write
8 59 chunk_peek_at call site: 00059 Curl_bufq_read
8 426 curlx_dyn_add call site: 00426 curlx_dyn_ptr
8 473 curl_url_set call site: 00473 curl_url_set
7 49 chunk_peek call site: 00049 Curl_bufq_peek_at

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 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 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_set [function] [call site] 00117
6 set_url_scheme [function] [call site] 00142
7 Curl_get_scheme_handler [function] [call site] 00144
6 Curl_safefree [function] [call site] 00177
6 set_url_port [function] [call site] 00178
7 curlx_str_number [function] [call site] 00180
8 str_num_base [function] [call site] 00181
9 DEBUGASSERT [function] [call site] 00182
9 DEBUGASSERT [function] [call site] 00183
9 DEBUGASSERT [function] [call site] 00184
9 valid_digit [function] [call site] 00185
9 Curl_hexval [function] [call site] 00186
9 valid_digit [function] [call site] 00187
9 Curl_hexval [function] [call site] 00188
9 valid_digit [function] [call site] 00189
7 curl_maprintf [function] [call site] 00190
8 curl_mvaprintf [function] [call site] 00192
9 curlx_dyn_init [function] [call site] 00193
10 DEBUGASSERT [function] [call site] 00194
10 DEBUGASSERT [function] [call site] 00195
10 DEBUGASSERT [function] [call site] 00196
9 formatf [function] [call site] 00197
10 parsefmt [function] [call site] 00198
11 dollarstring [function] [call site] 00200
12 curlx_str_number [function] [call site] 00201
12 curlx_str_single [function] [call site] 00202
13 DEBUGASSERT [function] [call site] 00203
11 dollarstring [function] [call site] 00204
11 curlx_str_number [function] [call site] 00205
11 FALLTHROUGH [function] [call site] 00206
11 curlx_str_number [function] [call site] 00207
11 dollarstring [function] [call site] 00208
11 FALLTHROUGH [function] [call site] 00209
11 is_arg_used [function] [call site] 00210
11 mark_arg_used [function] [call site] 00211
11 is_arg_used [function] [call site] 00212
11 mark_arg_used [function] [call site] 00213
11 mark_arg_used [function] [call site] 00214
11 is_arg_used [function] [call site] 00215
11 DEBUGASSERT [function] [call site] 00225
10 out_number [function] [call site] 00242
10 out_double [function] [call site] 00255
11 curl_msnprintf [function] [call site] 00257
12 va_start [function] [call site] 00258
12 curl_mvsnprintf [function] [call site] 00259
13 DEBUGASSERT [function] [call site] 00261
11 curl_msnprintf [function] [call site] 00263
11 DEBUGASSERT [function] [call site] 00264
9 curlx_dyn_free [function] [call site] 00267
10 DEBUGASSERT [function] [call site] 00268
10 DEBUGASSERT [function] [call site] 00269
10 Curl_safefree [function] [call site] 00270
9 curlx_dyn_len [function] [call site] 00271
10 DEBUGASSERT [function] [call site] 00272
10 DEBUGASSERT [function] [call site] 00273
10 DEBUGASSERT [function] [call site] 00274
9 curlx_dyn_ptr [function] [call site] 00275
10 DEBUGASSERT [function] [call site] 00276
10 DEBUGASSERT [function] [call site] 00277
10 DEBUGASSERT [function] [call site] 00278
6 set_url [function] [call site] 00285
7 curl_url_set [function] [call site] 00287
7 curl_url_set [function] [call site] 00288
7 curl_url_strerror [function] [call site] 00293
7 curl_url_get [function] [call site] 00294
8 Curl_get_scheme_handler [function] [call site] 00295
8 curl_msnprintf [function] [call site] 00296
8 Curl_get_scheme_handler [function] [call site] 00297
8 urlget_url [function] [call site] 00298
9 curl_strequal [function] [call site] 00299
10 casecompare [function] [call site] 00300
11 Curl_raw_toupper [function] [call site] 00301
11 Curl_raw_toupper [function] [call site] 00302
9 curl_maprintf [function] [call site] 00303
9 Curl_get_scheme_handler [function] [call site] 00304
9 curl_msnprintf [function] [call site] 00305
9 curlx_dyn_init [function] [call site] 00307
9 curlx_dyn_addf [function] [call site] 00308
10 DEBUGASSERT [function] [call site] 00309
10 DEBUGASSERT [function] [call site] 00310
10 DEBUGASSERT [function] [call site] 00311
10 DEBUGASSERT [function] [call site] 00312
10 va_start [function] [call site] 00314
10 curlx_dyn_vaddf [function] [call site] 00315
11 DEBUGASSERT [function] [call site] 00316
11 DEBUGASSERT [function] [call site] 00317
11 DEBUGASSERT [function] [call site] 00318
11 DEBUGASSERT [function] [call site] 00319
11 curlx_dyn_vprintf [function] [call site] 00320
12 curlx_dyn_free [function] [call site] 00322
11 curl_mvaprintf [function] [call site] 00323
11 dyn_nappend [function] [call site] 00324
12 DEBUGASSERT [function] [call site] 00325
12 DEBUGASSERT [function] [call site] 00326
12 DEBUGASSERT [function] [call site] 00327
12 DEBUGASSERT [function] [call site] 00328
12 DEBUGASSERT [function] [call site] 00329
12 DEBUGASSERT [function] [call site] 00330
12 curlx_dyn_free [function] [call site] 00331
12 DEBUGASSERT [function] [call site] 00332
12 curlx_dyn_free [function] [call site] 00334
11 curlx_dyn_free [function] [call site] 00338
9 curlx_dyn_ptr [function] [call site] 00340
9 curl_easy_escape [function] [call site] 00341
10 curlx_dyn_init [function] [call site] 00344
10 ISUNRESERVED [function] [call site] 00345
10 curlx_dyn_addn [function] [call site] 00346
11 DEBUGASSERT [function] [call site] 00347
11 DEBUGASSERT [function] [call site] 00348
11 DEBUGASSERT [function] [call site] 00349
11 dyn_nappend [function] [call site] 00350
10 Curl_hexbyte [function] [call site] 00351
10 curlx_dyn_addn [function] [call site] 00352
10 curlx_dyn_ptr [function] [call site] 00353
9 Curl_is_ASCII_name [function] [call site] 00354
9 host_decode [function] [call site] 00355
9 Curl_is_ASCII_name [function] [call site] 00356
9 host_encode [function] [call site] 00357
9 curl_msnprintf [function] [call site] 00358
9 curl_maprintf [function] [call site] 00359
8 urlget_format [function] [call site] 00361
9 Curl_memdup0 [function] [call site] 00363
9 Curl_urldecode [function] [call site] 00367
10 DEBUGASSERT [function] [call site] 00368
10 DEBUGASSERT [function] [call site] 00369
10 ISXDIGIT [function] [call site] 00372
10 ISXDIGIT [function] [call site] 00373
10 Curl_hexval [function] [call site] 00374
10 Curl_hexval [function] [call site] 00375
10 Curl_safefree [function] [call site] 00376
9 curlx_dyn_init [function] [call site] 00378
9 urlencode_str [function] [call site] 00379
10 find_host_sep [function] [call site] 00380
10 curlx_dyn_addn [function] [call site] 00382
10 curlx_dyn_addn [function] [call site] 00383
10 curlx_dyn_addn [function] [call site] 00384
10 Curl_hexbyte [function] [call site] 00385
10 curlx_dyn_addn [function] [call site] 00386
10 curlx_dyn_addn [function] [call site] 00387
9 curlx_dyn_ptr [function] [call site] 00390
9 Curl_is_ASCII_name [function] [call site] 00391
9 host_decode [function] [call site] 00392
9 Curl_is_ASCII_name [function] [call site] 00394
9 host_encode [function] [call site] 00395
7 curl_mfprintf [function] [call site] 00397
7 curl_url_strerror [function] [call site] 00398
7 curl_mfprintf [function] [call site] 00404
7 curl_url_cleanup [function] [call site] 00405
6 DEBUGASSERT [function] [call site] 00408
6 curlx_dyn_init [function] [call site] 00409
6 curlx_dyn_addn [function] [call site] 00410
6 curlx_dyn_addn [function] [call site] 00412
6 ISUNRESERVED [function] [call site] 00413
6 allowed_in_path [function] [call site] 00414
6 curlx_dyn_addn [function] [call site] 00415
6 Curl_hexbyte [function] [call site] 00417
6 curlx_dyn_addn [function] [call site] 00418
6 curlx_dyn_add [function] [call site] 00420
7 DEBUGASSERT [function] [call site] 00421
7 DEBUGASSERT [function] [call site] 00422
7 DEBUGASSERT [function] [call site] 00423
7 DEBUGASSERT [function] [call site] 00424
7 dyn_nappend [function] [call site] 00426
6 curlx_dyn_ptr [function] [call site] 00428
6 Curl_raw_tolower [function] [call site] 00433
6 Curl_raw_tolower [function] [call site] 00434
6 curlx_dyn_ptr [function] [call site] 00435
6 curlx_dyn_init [function] [call site] 00437
6 curlx_dyn_addn [function] [call site] 00438
6 curlx_dyn_addn [function] [call site] 00439
6 curlx_dyn_add [function] [call site] 00440
6 curlx_dyn_free [function] [call site] 00441
6 curlx_dyn_ptr [function] [call site] 00443
6 curlx_dyn_free [function] [call site] 00444
6 curlx_dyn_len [function] [call site] 00445
6 Curl_urldecode [function] [call site] 00446
6 hostname_check [function] [call site] 00447
6 hostname_check [function] [call site] 00469
6 CURL_UNCONST [function] [call site] 00470
6 curlx_dyn_free [function] [call site] 00471
6 CURL_UNCONST [function] [call site] 00473
5 curl_url_set [function] [call site] 00474
5 curl_mfprintf [function] [call site] 00475
5 curl_url_get [function] [call site] 00476
5 curl_mfprintf [function] [call site] 00477
5 curl_url_strerror [function] [call site] 00478
5 curl_free [function] [call site] 00480
5 curl_url_cleanup [function] [call site] 00481
3 Curl_bufq_skip [function] [call site] 00482
4 chunk_skip [function] [call site] 00483
4 prune_head [function] [call site] 00486
2 FV_PRINTF [function] [call site] 00487
2 FV_PRINTF [function] [call site] 00488
2 FuzzedDataProvider*::ConsumeIntegralInRange [function] [call site] 00490
2 FV_PRINTF [function] [call site] 00491
2 Curl_bufq_skip [function] [call site] 00492
2 FuzzedDataProvider*::ConsumeIntegralInRange [function] [call site] 00493
2 FV_PRINTF [function] [call site] 00494
2 compute_buffer [function] [call site] 00495
2 Curl_bufq_write [function] [call site] 00496
3 DEBUGASSERT [function] [call site] 00497
3 get_non_full_tail [function] [call site] 00498
2 FV_PRINTF [function] [call site] 00503
2 FV_PRINTF [function] [call site] 00505
2 Curl_bufq_free [function] [call site] 00507
3 chunk_list_free [function] [call site] 00508
3 chunk_list_free [function] [call site] 00510
2 Curl_bufcp_free [function] [call site] 00511
3 chunk_list_free [function] [call site] 00512