Fuzz introspector: boost_uuid_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
0 0 None 0 150 boost::uuids::detail::sha1::get_digest(unsignedchar(&)[20]) call site: 00000 /src/boost/./boost/uuid/detail/sha1.hpp:187
0 0 None 0 0 boost::uuids::detail::sha1::process_byte(unsignedchar) call site: 00000 /src/boost/./boost/uuid/detail/sha1.hpp:88

Fuzzer calltree

0 LLVMFuzzerTestOneInput [function] [call site] 00000
1 boost::uuids::ns::url() [function] [call site] 00001
2 boost::uuids::uuid::uuid(unsigned char const (&) [16]) [function] [call site] 00002
3 boost::uuids::uuid::data_type::operator unsigned char (&) [16]() [function] [call site] 00003
1 boost::uuids::name_generator_sha1::name_generator_sha1(boost::uuids::uuid const&) [function] [call site] 00004
2 boost::uuids::detail::basic_name_generator<boost::uuids::detail::sha1>::basic_name_generator(boost::uuids::uuid const&) [function] [call site] 00005
1 boost::uuids::uuid::uuid() [function] [call site] 00006
1 boost::uuids::uuid boost::uuids::string_generator::operator()<char, std::__1::char_traits<char>, std::__1::allocator<char> >(std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> > const&) const [function] [call site] 00007
2 boost::uuids::uuid boost::uuids::string_generator::operator()<std::__1::__wrap_iter<char const*> >(std::__1::__wrap_iter<char const*>, std::__1::__wrap_iter<char const*>) const [function] [call site] 00008
3 std::__1::iterator_traits<std::__1::__wrap_iter<char const*> >::value_type boost::uuids::string_generator::get_next_char<std::__1::__wrap_iter<char const*> >(std::__1::__wrap_iter<char const*>&, std::__1::__wrap_iter<char const*>, int&) const [function] [call site] 00009
4 boost::uuids::string_generator::throw_invalid(int, char const*) const [function] [call site] 00010
5 snprintf [call site] 00011
5 std::runtime_error::runtime_error(std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> > const&) [call site] 00012
5 boost::source_location::source_location(char const*, unsigned int, char const*, unsigned int) [function] [call site] 00013
5 void boost::throw_exception<std::runtime_error>(std::runtime_error const&, boost::source_location const&) [function] [call site] 00014
6 boost::throw_exception_assert_compatibility(std::exception const&) [function] [call site] 00015
6 __cxa_allocate_exception [call site] 00016
6 boost::wrapexcept<std::runtime_error>::wrapexcept(std::runtime_error const&, boost::source_location const&) [function] [call site] 00017
7 boost::exception_detail::clone_base::clone_base() [function] [call site] 00018
7 std::runtime_error::runtime_error(std::runtime_error const&) [call site] 00019
7 boost::exception::exception() [function] [call site] 00020
8 boost::exception_detail::refcount_ptr<boost::exception_detail::error_info_container>::refcount_ptr() [function] [call site] 00021
7 boost::wrapexcept<std::runtime_error>::copy_from(void const*) [function] [call site] 00022
7 boost::source_location::file_name() const [function] [call site] 00023
7 boost::error_info<boost::throw_file_, char const*>::error_info(char const*) [function] [call site] 00024
7 boost::wrapexcept<std::runtime_error> const& boost::exception_detail::set_info<boost::wrapexcept<std::runtime_error> >(boost::wrapexcept<std::runtime_error> const&, boost::error_info<boost::throw_file_, char const*> const&) [function] [call site] 00025
7 boost::source_location::line() const [function] [call site] 00026
7 boost::error_info<boost::throw_line_, int>::error_info(int) [function] [call site] 00027
7 boost::wrapexcept<std::runtime_error> const& boost::exception_detail::set_info<boost::wrapexcept<std::runtime_error> >(boost::wrapexcept<std::runtime_error> const&, boost::error_info<boost::throw_line_, int> const&) [function] [call site] 00028
7 boost::source_location::function_name() const [function] [call site] 00029
7 boost::error_info<boost::throw_function_, char const*>::error_info(char const*) [function] [call site] 00030
7 boost::wrapexcept<std::runtime_error> const& boost::exception_detail::set_info<boost::wrapexcept<std::runtime_error> >(boost::wrapexcept<std::runtime_error> const&, boost::error_info<boost::throw_function_, char const*> const&) [function] [call site] 00031
7 boost::source_location::column() const [function] [call site] 00032
7 boost::error_info<boost::throw_column_, int>::error_info(int) [function] [call site] 00033
7 boost::wrapexcept<std::runtime_error> const& boost::exception_detail::set_info<boost::wrapexcept<std::runtime_error> >(boost::wrapexcept<std::runtime_error> const&, boost::error_info<boost::throw_column_, int> const&) [function] [call site] 00034
7 boost::exception::~exception() [function] [call site] 00035
8 boost::exception_detail::refcount_ptr<boost::exception_detail::error_info_container>::~refcount_ptr() [function] [call site] 00036
9 boost::exception_detail::refcount_ptr<boost::exception_detail::error_info_container>::release() [function] [call site] 00037
9 __clang_call_terminate [call site] 00038
10 __cxa_begin_catch [call site] 00039
7 std::runtime_error::~runtime_error() [call site] 00040
7 boost::exception_detail::clone_base::~clone_base() [function] [call site] 00041
6 __cxa_throw [call site] 00042
6 boost::wrapexcept<std::runtime_error>::~wrapexcept() [function] [call site] 00043
7 boost::exception::~exception() [function] [call site] 00044
7 std::runtime_error::~runtime_error() [call site] 00045
7 boost::exception_detail::clone_base::~clone_base() [function] [call site] 00046
6 __cxa_free_exception [call site] 00047
5 std::runtime_error::~runtime_error() [call site] 00048
3 boost::uuids::string_generator::is_open_brace(char) const [function] [call site] 00049
3 std::__1::iterator_traits<std::__1::__wrap_iter<char const*> >::value_type boost::uuids::string_generator::get_next_char<std::__1::__wrap_iter<char const*> >(std::__1::__wrap_iter<char const*>&, std::__1::__wrap_iter<char const*>, int&) const [function] [call site] 00050
3 boost::uuids::uuid::uuid() [function] [call site] 00051
3 boost::uuids::uuid::begin() [function] [call site] 00052
4 boost::uuids::uuid::data_type::operator unsigned char (&) [16]() [function] [call site] 00053
3 boost::uuids::uuid::end() [function] [call site] 00054
4 boost::uuids::uuid::data_type::operator()() [function] [call site] 00055
4 boost::uuids::uuid::size() const [function] [call site] 00056
5 boost::uuids::uuid::static_size() [function] [call site] 00057
3 boost::uuids::uuid::begin() [function] [call site] 00058
3 std::__1::iterator_traits<std::__1::__wrap_iter<char const*> >::value_type boost::uuids::string_generator::get_next_char<std::__1::__wrap_iter<char const*> >(std::__1::__wrap_iter<char const*>&, std::__1::__wrap_iter<char const*>, int&) const [function] [call site] 00059
3 boost::uuids::string_generator::is_dash(char) const [function] [call site] 00060
3 std::__1::iterator_traits<std::__1::__wrap_iter<char const*> >::value_type boost::uuids::string_generator::get_next_char<std::__1::__wrap_iter<char const*> >(std::__1::__wrap_iter<char const*>&, std::__1::__wrap_iter<char const*>, int&) const [function] [call site] 00061
3 boost::uuids::string_generator::is_dash(char) const [function] [call site] 00062
3 std::__1::iterator_traits<std::__1::__wrap_iter<char const*> >::value_type boost::uuids::string_generator::get_next_char<std::__1::__wrap_iter<char const*> >(std::__1::__wrap_iter<char const*>&, std::__1::__wrap_iter<char const*>, int&) const [function] [call site] 00063
3 boost::uuids::string_generator::throw_invalid(int, char const*) const [function] [call site] 00064
3 boost::uuids::string_generator::get_value(char, int) const [function] [call site] 00065
4 __cxa_guard_acquire [call site] 00066
4 __cxa_guard_release [call site] 00067
4 boost::uuids::string_generator::throw_invalid(int, char const*) const [function] [call site] 00068
3 std::__1::iterator_traits<std::__1::__wrap_iter<char const*> >::value_type boost::uuids::string_generator::get_next_char<std::__1::__wrap_iter<char const*> >(std::__1::__wrap_iter<char const*>&, std::__1::__wrap_iter<char const*>, int&) const [function] [call site] 00069
3 boost::uuids::string_generator::get_value(char, int) const [function] [call site] 00070
3 std::__1::iterator_traits<std::__1::__wrap_iter<char const*> >::value_type boost::uuids::string_generator::get_next_char<std::__1::__wrap_iter<char const*> >(std::__1::__wrap_iter<char const*>&, std::__1::__wrap_iter<char const*>, int&) const [function] [call site] 00071
3 boost::uuids::string_generator::check_close_brace(char, char, int) const [function] [call site] 00072
4 boost::uuids::string_generator::throw_invalid(int, char const*) const [function] [call site] 00073
3 boost::uuids::string_generator::throw_invalid(int, char const*) const [function] [call site] 00074
1 boost::uuids::uuid boost::uuids::detail::basic_name_generator<boost::uuids::detail::sha1>::operator()<char, std::__1::char_traits<char>, std::__1::allocator<char> >(std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> > const&) const [function] [call site] 00075
2 boost::uuids::detail::sha1::sha1() [function] [call site] 00076
3 boost::uuids::detail::sha1::reset() [function] [call site] 00077
2 boost::uuids::uuid::begin() const [function] [call site] 00078
3 boost::uuids::uuid::data_type::operator unsigned char const (&) [16]() const [function] [call site] 00079
2 boost::uuids::uuid::size() const [function] [call site] 00080
2 boost::uuids::detail::sha1::process_bytes(void const*, unsigned long) [function] [call site] 00081
3 boost::uuids::detail::sha1::process_block(void const*, void const*) [function] [call site] 00082
4 boost::uuids::detail::sha1::process_byte(unsigned char) [function] [call site] 00083
5 boost::uuids::detail::sha1::process_byte_impl(unsigned char) [function] [call site] 00084
6 boost::uuids::detail::sha1::process_block() [function] [call site] 00085
7 boost::uuids::detail::left_rotate(unsigned int, unsigned long) [function] [call site] 00086
7 boost::uuids::detail::left_rotate(unsigned int, unsigned long) [function] [call site] 00087
7 boost::uuids::detail::left_rotate(unsigned int, unsigned long) [function] [call site] 00088
2 boost::uuids::detail::basic_name_generator<boost::uuids::detail::sha1>::process_characters(boost::uuids::detail::sha1&, char const*, unsigned long) const [function] [call site] 00089
3 boost::uuids::detail::sha1::process_bytes(void const*, unsigned long) [function] [call site] 00090
3 __clang_call_terminate [call site] 00091
2 boost::uuids::detail::basic_name_generator<boost::uuids::detail::sha1>::hash_to_uuid(boost::uuids::detail::sha1&) const [function] [call site] 00092
3 boost::uuids::detail::sha1::get_digest(unsigned char (&) [20]) [function] [call site] 00093
4 boost::uuids::detail::sha1::process_byte_impl(unsigned char) [function] [call site] 00094
4 boost::uuids::detail::sha1::process_byte_impl(unsigned char) [function] [call site] 00095
4 boost::uuids::detail::sha1::process_byte_impl(unsigned char) [function] [call site] 00096
4 boost::uuids::detail::sha1::process_byte_impl(unsigned char) [function] [call site] 00097
4 boost::uuids::detail::sha1::process_byte_impl(unsigned char) [function] [call site] 00098
4 boost::uuids::detail::sha1::process_byte_impl(unsigned char) [function] [call site] 00099
4 boost::uuids::detail::sha1::process_byte_impl(unsigned char) [function] [call site] 00100
4 boost::uuids::detail::sha1::process_byte_impl(unsigned char) [function] [call site] 00101
4 boost::uuids::detail::sha1::process_byte_impl(unsigned char) [function] [call site] 00102
4 boost::uuids::detail::sha1::process_byte_impl(unsigned char) [function] [call site] 00103
4 boost::uuids::detail::sha1::process_byte_impl(unsigned char) [function] [call site] 00104
4 boost::uuids::detail::sha1::process_byte_impl(unsigned char) [function] [call site] 00105
4 boost::uuids::detail::store_big_u32(void*, unsigned int) [function] [call site] 00106
5 boost::uuids::detail::byteswap(unsigned int) [function] [call site] 00107
4 boost::uuids::detail::store_big_u32(void*, unsigned int) [function] [call site] 00108
4 boost::uuids::detail::store_big_u32(void*, unsigned int) [function] [call site] 00109
4 boost::uuids::detail::store_big_u32(void*, unsigned int) [function] [call site] 00110
4 boost::uuids::detail::store_big_u32(void*, unsigned int) [function] [call site] 00111
3 boost::uuids::uuid::uuid() [function] [call site] 00112
3 boost::uuids::uuid::data_type::operator unsigned char (&) [16]() [function] [call site] 00113
3 boost::uuids::uuid::begin() [function] [call site] 00114
3 boost::uuids::uuid::begin() [function] [call site] 00115
3 boost::uuids::detail::sha1::get_version() const [function] [call site] 00116
3 boost::uuids::uuid::begin() [function] [call site] 00117
3 boost::uuids::uuid::begin() [function] [call site] 00118
3 __clang_call_terminate [call site] 00119
2 __clang_call_terminate [call site] 00120
1 boost::uuids::hash_value(boost::uuids::uuid const&) [function] [call site] 00121
2 boost::uuids::uuid::data_type::operator unsigned char const (&) [16]() const [function] [call site] 00122
2 boost::uuids::detail::load_little_u32(void const*) [function] [call site] 00123
2 boost::uuids::detail::hash_mix_mx(unsigned long) [function] [call site] 00124
2 boost::uuids::uuid::data_type::operator unsigned char const (&) [16]() const [function] [call site] 00125
2 boost::uuids::detail::load_little_u32(void const*) [function] [call site] 00126
2 boost::uuids::detail::hash_mix_mx(unsigned long) [function] [call site] 00127
2 boost::uuids::uuid::data_type::operator unsigned char const (&) [16]() const [function] [call site] 00128
2 boost::uuids::detail::load_little_u32(void const*) [function] [call site] 00129
2 boost::uuids::detail::hash_mix_mx(unsigned long) [function] [call site] 00130
2 boost::uuids::uuid::data_type::operator unsigned char const (&) [16]() const [function] [call site] 00131
2 boost::uuids::detail::load_little_u32(void const*) [function] [call site] 00132
2 boost::uuids::detail::hash_mix_mx(unsigned long) [function] [call site] 00133
2 boost::uuids::detail::hash_mix_fmx(unsigned long) [function] [call site] 00134
1 boost::uuids::uuid::uuid() [function] [call site] 00135
1 boost::uuids::to_string(boost::uuids::uuid const&) [function] [call site] 00136
2 char* boost::uuids::detail::to_chars<char>(boost::uuids::uuid const&, char*) [function] [call site] 00137
3 boost::uuids::uuid::data_type::operator()() const [function] [call site] 00138
1 boost::uuids::to_wstring(boost::uuids::uuid const&) [function] [call site] 00139
2 wchar_t* boost::uuids::detail::to_chars<wchar_t>(boost::uuids::uuid const&, wchar_t*) [function] [call site] 00140
1 boost::uuids::swap(boost::uuids::uuid&, boost::uuids::uuid&) [function] [call site] 00141
2 boost::uuids::uuid::swap(boost::uuids::uuid&) [function] [call site] 00142
3 boost::uuids::uuid::data_type::operator unsigned char (&) [16]() [function] [call site] 00143
3 __clang_call_terminate [call site] 00144
3 boost::uuids::uuid::data_type::operator unsigned char (&) [16]() [function] [call site] 00145
3 __clang_call_terminate [call site] 00146
3 boost::uuids::uuid::data_type::operator unsigned char (&) [16]() [function] [call site] 00147
3 boost::uuids::uuid::data_type::operator unsigned char (&) [16]() [function] [call site] 00148
3 __clang_call_terminate [call site] 00149
1 __cxa_begin_catch [call site] 00150
1 __cxa_end_catch [call site] 00151