Fuzz introspector: idna
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
4 17 ada::idna::deflate::inflate_raw(unsigned char const*, unsigned long, unsigned char*, unsigned long) call site: 00017
2 31 ada::idna::deflate::inflate_raw(unsigned char const*, unsigned long, unsigned char*, unsigned long) call site: 00031
2 35 ada::idna::deflate::inflate_raw(unsigned char const*, unsigned long, unsigned char*, unsigned long) call site: 00035
2 39 ada::idna::deflate::inflate_raw(unsigned char const*, unsigned long, unsigned char*, unsigned long) call site: 00039
2 158 LLVMFuzzerTestOneInput call site: 00158 printf
2 161 LLVMFuzzerTestOneInput call site: 00161 printf
2 167 LLVMFuzzerTestOneInput call site: 00167 printf
1 64 ada::idna::ensure_tables() call site: 00064 __cxa_begin_catch
1 113 ada::idna::is_label_valid(std::__1::basic_string_view >) call site: 00113

Fuzzer calltree

0 LLVMFuzzerTestOneInput [function] [call site] 00000
1 ada::idna::to_ascii(std::__1::basic_string_view<char, std::__1::char_traits<char> >) [function] [call site] 00001
2 ada::idna::to_ascii(std::__1::basic_string_view<char, std::__1::char_traits<char> >, std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> >&) [function] [call site] 00002
3 ada::idna::is_ascii(std::__1::basic_string_view<char, std::__1::char_traits<char> >) [function] [call site] 00003
3 ada::idna::from_ascii_to_ascii(std::__1::basic_string_view<char, std::__1::char_traits<char> >, std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> >&) [function] [call site] 00004
4 ada::idna::ascii_map(char*, unsigned long) [function] [call site] 00005
5 ada::idna::ascii_map(char*, unsigned long)::$_0::operator()(unsigned char) const [function] [call site] 00006
5 ada::idna::ascii_map(char*, unsigned long)::$_0::operator()(unsigned char) const [function] [call site] 00007
5 ada::idna::ascii_map(char*, unsigned long)::$_0::operator()(unsigned char) const [function] [call site] 00008
3 ada::idna::utf32_length_from_utf8(char const*, unsigned long) [function] [call site] 00009
3 ada::idna::utf8_to_utf32(char const*, unsigned long, char32_t*) [function] [call site] 00010
3 ada::idna::map(std::__1::basic_string_view<char32_t, std::__1::char_traits<char32_t> >, std::__1::basic_string<char32_t, std::__1::char_traits<char32_t>, std::__1::allocator<char32_t> >&) [function] [call site] 00011
4 ada::idna::ensure_tables() [function] [call site] 00012
5 ada::idna::deflate::inflate_raw(unsigned char const*, unsigned long, unsigned char*, unsigned long) [function] [call site] 00013
6 ada::idna::deflate::BitReader::BitReader(unsigned char const*, unsigned long) [function] [call site] 00014
6 ada::idna::deflate::BitReader::get(int) [function] [call site] 00015
7 ada::idna::deflate::BitReader::ensure(int) [function] [call site] 00016
6 ada::idna::deflate::BitReader::get(int) [function] [call site] 00017
6 ada::idna::deflate::BitReader::align_byte() [function] [call site] 00018
6 ada::idna::deflate::BitReader::ensure(int) [function] [call site] 00019
6 ada::idna::deflate::BitReader::get(int) [function] [call site] 00020
6 ada::idna::deflate::BitReader::get(int) [function] [call site] 00021
6 ada::idna::deflate::Huff::Huff() [function] [call site] 00022
6 ada::idna::deflate::BitReader::get(int) [function] [call site] 00023
6 ada::idna::deflate::BitReader::get(int) [function] [call site] 00024
6 ada::idna::deflate::BitReader::get(int) [function] [call site] 00025
6 ada::idna::deflate::BitReader::get(int) [function] [call site] 00026
6 ada::idna::deflate::Huff::Huff() [function] [call site] 00027
6 ada::idna::deflate::Huff::build(unsigned char const*, int) [function] [call site] 00028
6 ada::idna::deflate::Huff::decode(ada::idna::deflate::BitReader&) const [function] [call site] 00029
7 ada::idna::deflate::BitReader::get(int) [function] [call site] 00030
6 ada::idna::deflate::BitReader::get(int) [function] [call site] 00031
6 ada::idna::deflate::BitReader::get(int) [function] [call site] 00032
6 ada::idna::deflate::BitReader::get(int) [function] [call site] 00033
6 ada::idna::deflate::Huff::build(unsigned char const*, int) [function] [call site] 00034
6 ada::idna::deflate::Huff::build(unsigned char const*, int) [function] [call site] 00035
6 ada::idna::deflate::fixed_litlen(ada::idna::deflate::BitReader&) [function] [call site] 00036
7 ada::idna::deflate::Huff::decode(ada::idna::deflate::BitReader&) const [function] [call site] 00037
6 ada::idna::deflate::Huff::decode(ada::idna::deflate::BitReader&) const [function] [call site] 00038
6 ada::idna::deflate::BitReader::get(int) [function] [call site] 00039
6 ada::idna::deflate::fixed_dist(ada::idna::deflate::BitReader&) [function] [call site] 00040
7 ada::idna::deflate::Huff::decode(ada::idna::deflate::BitReader&) const [function] [call site] 00041
6 ada::idna::deflate::Huff::decode(ada::idna::deflate::BitReader&) const [function] [call site] 00042
6 ada::idna::deflate::BitReader::get(int) [function] [call site] 00043
5 ada::idna::crc32_ieee(unsigned char const*, unsigned long) [function] [call site] 00044
5 ada::idna::detail::convert_table_blob_to_host_endian(unsigned char*) [function] [call site] 00045
5 ada::idna::ensure_tables()::{lambda(unsigned long)#1}::operator()(unsigned long) const [function] [call site] 00046
5 ada::idna::ensure_tables()::{lambda(unsigned long)#1}::operator()(unsigned long) const [function] [call site] 00047
5 ada::idna::ensure_tables()::{lambda(unsigned long)#1}::operator()(unsigned long) const [function] [call site] 00048
5 ada::idna::ensure_tables()::{lambda(unsigned long)#1}::operator()(unsigned long) const [function] [call site] 00049
5 ada::idna::ensure_tables()::{lambda(unsigned long)#1}::operator()(unsigned long) const [function] [call site] 00050
5 ada::idna::ensure_tables()::{lambda(unsigned long)#1}::operator()(unsigned long) const [function] [call site] 00051
5 ada::idna::ensure_tables()::{lambda(unsigned long)#1}::operator()(unsigned long) const [function] [call site] 00052
5 ada::idna::ensure_tables()::{lambda(unsigned long)#1}::operator()(unsigned long) const [function] [call site] 00053
5 ada::idna::ensure_tables()::{lambda(unsigned long)#1}::operator()(unsigned long) const [function] [call site] 00054
5 ada::idna::ensure_tables()::{lambda(unsigned long)#1}::operator()(unsigned long) const [function] [call site] 00055
5 ada::idna::ensure_tables()::{lambda(unsigned long)#1}::operator()(unsigned long) const [function] [call site] 00056
5 ada::idna::ensure_tables()::{lambda(unsigned long)#1}::operator()(unsigned long) const [function] [call site] 00057
5 ada::idna::ensure_tables()::{lambda(unsigned long)#1}::operator()(unsigned long) const [function] [call site] 00058
5 ada::idna::ensure_tables()::{lambda(unsigned long)#1}::operator()(unsigned long) const [function] [call site] 00059
5 ada::idna::ensure_tables()::{lambda(unsigned long)#1}::operator()(unsigned long) const [function] [call site] 00060
5 ada::idna::ensure_tables()::{lambda(unsigned long)#1}::operator()(unsigned long) const [function] [call site] 00061
5 ada::idna::ensure_tables()::{lambda(unsigned long)#1}::operator()(unsigned long) const [function] [call site] 00062
5 ada::idna::ensure_tables()::{lambda(unsigned long)#1}::operator()(unsigned long) const [function] [call site] 00063
5 __clang_call_terminate [call site] 00064
6 __cxa_begin_catch [call site] 00065
4 ada::idna::idna_lookup(unsigned int) [function] [call site] 00066
4 ada::idna::utf8_count_codepoints(unsigned char const*) [function] [call site] 00067
4 ada::idna::idna_lookup(unsigned int) [function] [call site] 00068
4 ada::idna::utf8_next(unsigned char const*&) [function] [call site] 00069
3 ada::idna::is_ascii(std::__1::basic_string_view<char32_t, std::__1::char_traits<char32_t> >) [function] [call site] 00070
3 ada::idna::is_already_nfc(std::__1::basic_string_view<char32_t, std::__1::char_traits<char32_t> >) [function] [call site] 00071
4 ada::idna::tables_are_ready() [function] [call site] 00072
4 ada::idna::ensure_tables() [function] [call site] 00073
4 ada::idna::canonical_decomp_length(char32_t) [function] [call site] 00074
5 ada::idna::decomposition_block_row(unsigned char) [function] [call site] 00075
4 ada::idna::get_ccc(char32_t) [function] [call site] 00076
5 ada::idna::ccc_block_row(unsigned char) [function] [call site] 00077
4 ada::idna::would_compose(std::__1::basic_string_view<char32_t, std::__1::char_traits<char32_t> >) [function] [call site] 00078
5 ada::idna::composition_block_row(unsigned char) [function] [call site] 00079
5 ada::idna::get_ccc(char32_t) [function] [call site] 00080
3 ada::idna::normalize(std::__1::basic_string<char32_t, std::__1::char_traits<char32_t>, std::__1::allocator<char32_t> >&) [function] [call site] 00081
4 ada::idna::ensure_tables() [function] [call site] 00082
4 ada::idna::is_already_nfc(std::__1::basic_string_view<char32_t, std::__1::char_traits<char32_t> >) [function] [call site] 00083
4 ada::idna::decompose_nfc(std::__1::basic_string<char32_t, std::__1::char_traits<char32_t>, std::__1::allocator<char32_t> >&) [function] [call site] 00084
5 ada::idna::compute_decomposition_length(std::__1::basic_string_view<char32_t, std::__1::char_traits<char32_t> >) [function] [call site] 00085
6 ada::idna::decomposition_block_row(unsigned char) [function] [call site] 00086
5 ada::idna::decompose(std::__1::basic_string<char32_t, std::__1::char_traits<char32_t>, std::__1::allocator<char32_t> >&, unsigned long) [function] [call site] 00087
6 ada::idna::decomposition_block_row(unsigned char) [function] [call site] 00088
5 ada::idna::sort_marks(std::__1::basic_string<char32_t, std::__1::char_traits<char32_t>, std::__1::allocator<char32_t> >&) [function] [call site] 00089
6 ada::idna::get_ccc(char32_t) [function] [call site] 00090
6 ada::idna::get_ccc(char32_t) [function] [call site] 00091
4 ada::idna::compose(std::__1::basic_string<char32_t, std::__1::char_traits<char32_t>, std::__1::allocator<char32_t> >&) [function] [call site] 00092
5 ada::idna::composition_block_row(unsigned char) [function] [call site] 00093
5 ada::idna::get_ccc(char32_t) [function] [call site] 00094
5 ada::idna::composition_block_row(unsigned char) [function] [call site] 00095
3 ada::idna::is_ace_prefix(std::__1::basic_string_view<char32_t, std::__1::char_traits<char32_t> >) [function] [call site] 00096
3 ada::idna::append_ascii_label(std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> >&, std::__1::basic_string_view<char32_t, std::__1::char_traits<char32_t> >) [function] [call site] 00097
3 ada::idna::punycode_to_utf32(std::__1::basic_string_view<char, std::__1::char_traits<char> >, std::__1::basic_string<char32_t, std::__1::char_traits<char32_t>, std::__1::allocator<char32_t> >&) [function] [call site] 00098
4 ada::idna::char_to_digit_value(char) [function] [call site] 00099
4 ada::idna::adapt(int, int, bool) [function] [call site] 00100
3 ada::idna::is_ascii(std::__1::basic_string_view<char32_t, std::__1::char_traits<char32_t> >) [function] [call site] 00101
3 ada::idna::map(std::__1::basic_string_view<char32_t, std::__1::char_traits<char32_t> >, std::__1::basic_string<char32_t, std::__1::char_traits<char32_t>, std::__1::allocator<char32_t> >&) [function] [call site] 00102
3 ada::idna::is_ascii(std::__1::basic_string_view<char32_t, std::__1::char_traits<char32_t> >) [function] [call site] 00103
3 ada::idna::is_already_nfc(std::__1::basic_string_view<char32_t, std::__1::char_traits<char32_t> >) [function] [call site] 00104
3 ada::idna::normalize(std::__1::basic_string<char32_t, std::__1::char_traits<char32_t>, std::__1::allocator<char32_t> >&) [function] [call site] 00105
3 ada::idna::is_label_valid(std::__1::basic_string_view<char32_t, std::__1::char_traits<char32_t> >) [function] [call site] 00106
4 ada::idna::ensure_tables() [function] [call site] 00107
4 ada::idna::find_last_not_of_nsm(std::__1::basic_string_view<char32_t, std::__1::char_traits<char32_t> >) [function] [call site] 00108
5 ada::idna::find_direction(unsigned int) [function] [call site] 00109
4 ada::idna::is_rtl_label(std::__1::basic_string_view<char32_t, std::__1::char_traits<char32_t> >) [function] [call site] 00110
5 ada::idna::find_direction(unsigned int) [function] [call site] 00111
4 ada::idna::find_direction(unsigned int) [function] [call site] 00112
4 ada::idna::find_direction(unsigned int) [function] [call site] 00113
4 ada::idna::find_direction(unsigned int) [function] [call site] 00114
4 ada::idna::find_direction(unsigned int) [function] [call site] 00115
4 ada::idna::find_direction(unsigned int) [function] [call site] 00116
3 ada::idna::is_ascii(std::__1::basic_string_view<char32_t, std::__1::char_traits<char32_t> >) [function] [call site] 00117
3 ada::idna::append_ascii_label(std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> >&, std::__1::basic_string_view<char32_t, std::__1::char_traits<char32_t> >) [function] [call site] 00118
3 ada::idna::is_label_valid(std::__1::basic_string_view<char32_t, std::__1::char_traits<char32_t> >) [function] [call site] 00119
3 ada::idna::utf32_to_punycode(std::__1::basic_string_view<char32_t, std::__1::char_traits<char32_t> >, std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> >&) [function] [call site] 00120
4 ada::idna::digit_to_char(int) [function] [call site] 00121
4 ada::idna::digit_to_char(int) [function] [call site] 00122
4 ada::idna::adapt(int, int, bool) [function] [call site] 00123
1 ada::idna::to_unicode(std::__1::basic_string_view<char, std::__1::char_traits<char> >) [function] [call site] 00124
2 ada::idna::to_unicode(std::__1::basic_string_view<char, std::__1::char_traits<char> >, std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> >&) [function] [call site] 00125
3 ada::idna::is_ascii(std::__1::basic_string_view<char, std::__1::char_traits<char> >) [function] [call site] 00126
3 ada::idna::punycode_to_utf32(std::__1::basic_string_view<char, std::__1::char_traits<char> >, std::__1::basic_string<char32_t, std::__1::char_traits<char32_t>, std::__1::allocator<char32_t> >&) [function] [call site] 00127
3 ada::idna::is_ascii(std::__1::basic_string_view<char32_t, std::__1::char_traits<char32_t> >) [function] [call site] 00128
3 ada::idna::map(std::__1::basic_string_view<char32_t, std::__1::char_traits<char32_t> >, std::__1::basic_string<char32_t, std::__1::char_traits<char32_t>, std::__1::allocator<char32_t> >&) [function] [call site] 00129
3 ada::idna::normalize(std::__1::basic_string<char32_t, std::__1::char_traits<char32_t>, std::__1::allocator<char32_t> >&) [function] [call site] 00130
3 ada::idna::is_label_valid(std::__1::basic_string_view<char32_t, std::__1::char_traits<char32_t> >) [function] [call site] 00131
3 ada::idna::utf8_length_from_utf32(char32_t const*, unsigned long) [function] [call site] 00132
3 ada::idna::utf32_to_utf8(char32_t const*, unsigned long, char*) [function] [call site] 00133
1 ada::idna::to_unicode(std::__1::basic_string_view<char, std::__1::char_traits<char> >) [function] [call site] 00134
1 ada::idna::punycode_to_utf32(std::__1::basic_string_view<char, std::__1::char_traits<char> >, std::__1::basic_string<char32_t, std::__1::char_traits<char32_t>, std::__1::allocator<char32_t> >&) [function] [call site] 00135
1 ada::idna::verify_punycode(std::__1::basic_string_view<char, std::__1::char_traits<char> >) [function] [call site] 00136
2 ada::idna::char_to_digit_value(char) [function] [call site] 00137
2 ada::idna::adapt(int, int, bool) [function] [call site] 00138
1 ada::idna::utf32_to_punycode(std::__1::basic_string_view<char32_t, std::__1::char_traits<char32_t> >, std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> >&) [function] [call site] 00139
1 ada::idna::utf32_length_from_utf8(char const*, unsigned long) [function] [call site] 00140
1 ada::idna::utf8_to_utf32(char const*, unsigned long, char32_t*) [function] [call site] 00141
1 ada::idna::utf8_length_from_utf32(char32_t const*, unsigned long) [function] [call site] 00142
1 ada::idna::utf32_to_utf8(char32_t const*, unsigned long, char*) [function] [call site] 00143
1 ada::idna::punycode_to_utf32(std::__1::basic_string_view<char, std::__1::char_traits<char> >, std::__1::basic_string<char32_t, std::__1::char_traits<char32_t>, std::__1::allocator<char32_t> >&) [function] [call site] 00144
1 ada::idna::is_label_valid(std::__1::basic_string_view<char32_t, std::__1::char_traits<char32_t> >) [function] [call site] 00145
1 ada::idna::is_label_valid(std::__1::basic_string_view<char32_t, std::__1::char_traits<char32_t> >) [function] [call site] 00146
1 ada::idna::ascii_map(char*, unsigned long) [function] [call site] 00147
1 ada::idna::utf32_length_from_utf8(char const*, unsigned long) [function] [call site] 00148
1 ada::idna::utf8_to_utf32(char const*, unsigned long, char32_t*) [function] [call site] 00149
1 ada::idna::map(std::__1::basic_string_view<char32_t, std::__1::char_traits<char32_t> >) [function] [call site] 00150
2 ada::idna::map(std::__1::basic_string_view<char32_t, std::__1::char_traits<char32_t> >, std::__1::basic_string<char32_t, std::__1::char_traits<char32_t>, std::__1::allocator<char32_t> >&) [function] [call site] 00151
1 ada::idna::contains_forbidden_domain_code_point(std::__1::basic_string_view<char, std::__1::char_traits<char> >) [function] [call site] 00152
2 ada::idna::is_forbidden_domain_code_point(char) [function] [call site] 00153
1 ada::idna::is_ascii(std::__1::basic_string_view<char, std::__1::char_traits<char> >) [function] [call site] 00154
1 ada::idna::utf32_length_from_utf8(char const*, unsigned long) [function] [call site] 00155
1 ada::idna::utf8_to_utf32(char const*, unsigned long, char32_t*) [function] [call site] 00156
1 ada::idna::normalize(std::__1::basic_string<char32_t, std::__1::char_traits<char32_t>, std::__1::allocator<char32_t> >&) [function] [call site] 00157
1 ada::idna::to_ascii(std::__1::basic_string_view<char, std::__1::char_traits<char> >) [function] [call site] 00158
1 printf [call site] 00159
1 abort [call site] 00160
1 ada::idna::to_unicode(std::__1::basic_string_view<char, std::__1::char_traits<char> >) [function] [call site] 00161
1 printf [call site] 00162
1 abort [call site] 00163
1 ada::idna::to_ascii(std::__1::basic_string_view<char, std::__1::char_traits<char> >) [function] [call site] 00164
1 ada::idna::punycode_to_utf32(std::__1::basic_string_view<char, std::__1::char_traits<char> >, std::__1::basic_string<char32_t, std::__1::char_traits<char32_t>, std::__1::allocator<char32_t> >&) [function] [call site] 00165
1 ada::idna::utf32_to_punycode(std::__1::basic_string_view<char32_t, std::__1::char_traits<char32_t> >, std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> >&) [function] [call site] 00166
1 ada::idna::punycode_to_utf32(std::__1::basic_string_view<char, std::__1::char_traits<char> >, std::__1::basic_string<char32_t, std::__1::char_traits<char32_t>, std::__1::allocator<char32_t> >&) [function] [call site] 00167
1 printf [call site] 00168
1 abort [call site] 00169