Fuzz introspector: fuzz_str
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
0 0 None 0 4 mhd_str_pct_decode_strict_n call site: 00041 /src/mhd2/src/mhd2/mhd_str.c:1920
0 0 None 0 4 mhd_str_pct_decode_lenient_n call site: 00046 /src/mhd2/src/mhd2/mhd_str.c:2002
0 0 None 0 0 mhd_str_remove_token_caseless call site: 00012 /src/mhd2/src/mhd2/mhd_str.c:1114
0 0 None 0 0 mhd_strx_to_uint32 call site: 00034 /src/mhd2/src/mhd2/mhd_str.c:1490
0 0 None 0 0 mhd_strx_to_uint32_n call site: 00037 /src/mhd2/src/mhd2/mhd_str.c:1524
0 0 None 0 0 mhd_strx_to_uint64 call site: 00027 /src/mhd2/src/mhd2/mhd_str.c:1558
0 0 None 0 0 mhd_strx_to_uint64_n call site: 00030 /src/mhd2/src/mhd2/mhd_str.c:1592
0 0 None 0 0 mhd_str_quote call site: 00059 /src/mhd2/src/mhd2/mhd_str.c:2342
0 0 None 0 0 mhd_base64_to_bin_n call site: 00064 /src/mhd2/src/mhd2/mhd_str.c:2546
0 0 None 0 0 mhd_base64_to_bin_n call site: 00064 /src/mhd2/src/mhd2/mhd_str.c:2562
0 0 None 0 0 mhd_base64_to_bin_n call site: 00064 /src/mhd2/src/mhd2/mhd_str.c:2583
0 0 None 0 0 mhd_base64_to_bin_n call site: 00064 /src/mhd2/src/mhd2/mhd_str.c:2588

Fuzzer calltree

0 LLVMFuzzerTestOneInput [function] [call site] 00000
1 fuzz_tokens(FuzzedDataProvider&) [function] [call site] 00001
2 mhd_str_equal_caseless [function] [call site] 00002
3 charsequalcaseless [function] [call site] 00003
4 isasciiupper [function] [call site] 00004
2 mhd_str_equal_caseless_n [function] [call site] 00005
3 charsequalcaseless [function] [call site] 00006
2 mhd_str_equal_caseless_bin_n [function] [call site] 00007
3 charsequalcaseless [function] [call site] 00008
2 mhd_str_has_token_caseless [function] [call site] 00009
3 charsequalcaseless [function] [call site] 00010
2 mhd_str_has_token_caseless [function] [call site] 00011
2 mhd_str_remove_token_caseless [function] [call site] 00012
3 charsequalcaseless [function] [call site] 00013
2 mhd_str_starts_with_token_opt_param [function] [call site] 00014
3 mhd_str_equal_caseless_bin_n [function] [call site] 00015
2 mhd_str_starts_with_token_req_param [function] [call site] 00016
3 mhd_str_equal_caseless_bin_n [function] [call site] 00017
3 charsequalcaseless [function] [call site] 00018
1 fuzz_conversion(FuzzedDataProvider&) [function] [call site] 00019
2 mhd_str_to_uint64 [function] [call site] 00020
3 isasciidigit [function] [call site] 00021
3 isasciidigit [function] [call site] 00022
2 mhd_str_to_uint64_n [function] [call site] 00023
3 isasciidigit [function] [call site] 00024
3 isasciidigit [function] [call site] 00025
2 mhd_strx_to_uint64 [function] [call site] 00026
3 xdigittovalue [function] [call site] 00027
3 xdigittovalue [function] [call site] 00028
2 mhd_strx_to_uint64_n [function] [call site] 00029
3 xdigittovalue [function] [call site] 00030
2 mhd_uint64_to_str [function] [call site] 00031
2 mhd_uint64_to_str [function] [call site] 00032
2 mhd_strx_to_uint32 [function] [call site] 00033
3 xdigittovalue [function] [call site] 00034
3 xdigittovalue [function] [call site] 00035
2 mhd_strx_to_uint32_n [function] [call site] 00036
3 xdigittovalue [function] [call site] 00037
2 mhd_uint16_to_str [function] [call site] 00038
2 mhd_uint16_to_str [function] [call site] 00039
1 fuzz_decode(FuzzedDataProvider&) [function] [call site] 00040
2 mhd_str_pct_decode_strict_n [function] [call site] 00041
3 xdigittovalue [function] [call site] 00042
3 xdigittovalue [function] [call site] 00043
3 xdigittovalue [function] [call site] 00044
3 xdigittovalue [function] [call site] 00045
2 mhd_str_pct_decode_lenient_n [function] [call site] 00046
3 xdigittovalue [function] [call site] 00047
3 xdigittovalue [function] [call site] 00048
3 xdigittovalue [function] [call site] 00049
3 xdigittovalue [function] [call site] 00050
2 mhd_str_pct_decode_in_place_strict [function] [call site] 00051
3 xdigittovalue [function] [call site] 00052
3 xdigittovalue [function] [call site] 00053
2 mhd_str_pct_decode_in_place_lenient [function] [call site] 00054
3 xdigittovalue [function] [call site] 00055
3 xdigittovalue [function] [call site] 00056
1 fuzz_quoted(FuzzedDataProvider&) [function] [call site] 00057
2 mhd_str_equal_quoted_bin_n [function] [call site] 00058
2 mhd_str_quote [function] [call site] 00059
2 mhd_str_unquote [function] [call site] 00060
2 mhd_str_quote [function] [call site] 00061
2 mhd_str_unquote [function] [call site] 00062
1 fuzz_base64(FuzzedDataProvider&) [function] [call site] 00063
2 mhd_base64_to_bin_n [function] [call site] 00064
1 fuzz_transformation(FuzzedDataProvider&) [function] [call site] 00065
2 MHD_http_method_to_string [call site] 00066
2 MHD_predef_header_to_string [call site] 00067
2 MHD_protocol_version_to_string [call site] 00068
1 fuzz_hex_conversion(FuzzedDataProvider&) [function] [call site] 00069
2 mhd_hex_to_bin [function] [call site] 00070
3 xdigittovalue [function] [call site] 00071
3 xdigittovalue [function] [call site] 00072
3 xdigittovalue [function] [call site] 00073
2 mhd_bin_to_hex [function] [call site] 00074
3 uint8totwoxdigits [function] [call site] 00075
2 mhd_bin_to_hex [function] [call site] 00076