Fuzz introspector: fuzz_fru_area
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
1 9 ipmi::fru::appendChassisType(std::__1::map , std::__1::allocator >, std::__1::basic_string , std::__1::allocator >, std::__1::less , std::__1::allocator > >, std::__1::allocator , std::__1::allocator > const, std::__1::basic_string , std::__1::allocator > > > > const&, std::__1::vector >&) call site: 00009

Fuzzer calltree

0 LLVMFuzzerTestOneInput [function] [call site] 00000
1 extractString(unsigned char const*&, unsigned long&, std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> >&) [function] [call site] 00001
1 extractString(unsigned char const*&, unsigned long&, std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> >&) [function] [call site] 00002
1 extractString(unsigned char const*&, unsigned long&, std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> >&) [function] [call site] 00003
1 ipmi::fru::buildFruAreaData(std::__1::map<std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> >, std::__1::map<std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> >, std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> >, std::__1::less<std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> > >, std::__1::allocator<std::__1::pair<std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> > const, std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> > > > >, std::__1::less<std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> > >, std::__1::allocator<std::__1::pair<std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> > const, std::__1::map<std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> >, std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> >, std::__1::less<std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> > >, std::__1::allocator<std::__1::pair<std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> > const, std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> > > > > > > > const&) [function] [call site] 00004
2 ipmi::fru::buildChassisInfoArea(std::__1::map<std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> >, std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> >, std::__1::less<std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> > >, std::__1::allocator<std::__1::pair<std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> > const, std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> > > > > const&) [function] [call site] 00005
3 ipmi::fru::preFormatProcessing(bool, std::__1::vector<unsigned char, std::__1::allocator<unsigned char> >&) [function] [call site] 00006
3 ipmi::fru::appendChassisType(std::__1::map<std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> >, std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> >, std::__1::less<std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> > >, std::__1::allocator<std::__1::pair<std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> > const, std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> > > > > const&, std::__1::vector<unsigned char, std::__1::allocator<unsigned char> >&) [function] [call site] 00007
4 bool ipmi::tryParse<unsigned char>(std::__1::basic_string_view<char, std::__1::char_traits<char> >, unsigned char&, int) [function] [call site] 00008
4 lg2::error<char const (&) [6], std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> >&>::log(char const*, lg2::details::header_str const&, std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> >&, std::__1::source_location const&) [function] [call site] 00009
5 lg2::log<(lg2::level)3, char const (&) [6], std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> >&>::log(char const*, lg2::details::header_str const&, std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> >&, std::__1::source_location const&) [function] [call site] 00010
6 lg2::log<(lg2::level)3, char const (&) [6], std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> >&>::log(std::__1::source_location const&, char const*, lg2::details::header_str const&, std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> >&) [function] [call site] 00011
7 void lg2::details::log_conversion::start<lg2::details::header_str const&, std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> >&>(lg2::level, std::__1::source_location const&, char const*, lg2::details::header_str const&, std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> >&) [function] [call site] 00012
8 void lg2::details::log_conversion::step<lg2::level&, std::__1::source_location const&, char const*&, std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> >&>(std::__1::tuple<lg2::level&, std::__1::source_location const&, char const*&>&&, lg2::details::header_str const&, std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> >&) [function] [call site] 00013
9 lg2::details::header_str::data() const [function] [call site] 00014
9 _ZN3lg27detailsL11log_convertITpTkNS0_9log_flagsEJETkNS0_16string_like_typeENSt3__112basic_stringIcNS2_11char_traitsIcEENS2_9allocatorIcEEEEEEDaPKcNS0_8log_flagIJDpT_EEERKT0_ [function] [call site] 00015
10 _ZN3lg27details8prohibitITpTkNS0_9log_flagsEJETkNS0_9log_flagsENS0_8flag_binEEEvNS0_8log_flagIJDpT_EEENS3_IJT0_EEE [function] [call site] 00016
10 _ZN3lg27details8prohibitITpTkNS0_9log_flagsEJETkNS0_9log_flagsENS0_8flag_decEEEvNS0_8log_flagIJDpT_EEENS3_IJT0_EEE [function] [call site] 00017
10 _ZN3lg27details8prohibitITpTkNS0_9log_flagsEJETkNS0_9log_flagsENS0_12flag_field16EEEvNS0_8log_flagIJDpT_EEENS3_IJT0_EEE [function] [call site] 00018
10 _ZN3lg27details8prohibitITpTkNS0_9log_flagsEJETkNS0_9log_flagsENS0_12flag_field32EEEvNS0_8log_flagIJDpT_EEENS3_IJT0_EEE [function] [call site] 00019
10 _ZN3lg27details8prohibitITpTkNS0_9log_flagsEJETkNS0_9log_flagsENS0_12flag_field64EEEvNS0_8log_flagIJDpT_EEENS3_IJT0_EEE [function] [call site] 00020
10 _ZN3lg27details8prohibitITpTkNS0_9log_flagsEJETkNS0_9log_flagsENS0_11flag_field8EEEvNS0_8log_flagIJDpT_EEENS3_IJT0_EEE [function] [call site] 00021
10 _ZN3lg27details8prohibitITpTkNS0_9log_flagsEJETkNS0_9log_flagsENS0_13flag_floatingEEEvNS0_8log_flagIJDpT_EEENS3_IJT0_EEE [function] [call site] 00022
10 _ZN3lg27details8prohibitITpTkNS0_9log_flagsEJETkNS0_9log_flagsENS0_8flag_hexEEEvNS0_8log_flagIJDpT_EEENS3_IJT0_EEE [function] [call site] 00023
10 _ZN3lg27details8prohibitITpTkNS0_9log_flagsEJETkNS0_9log_flagsENS0_15flag_signed_valEEEvNS0_8log_flagIJDpT_EEENS3_IJT0_EEE [function] [call site] 00024
10 _ZN3lg27details8prohibitITpTkNS0_9log_flagsEJETkNS0_9log_flagsENS0_17flag_unsigned_valEEEvNS0_8log_flagIJDpT_EEENS3_IJT0_EEE [function] [call site] 00025
10 _ZN3lg27detailsorITpTkNS0_9log_flagsEJETpTkNS0_9log_flagsEJNS0_8flag_strEEEEDaNS0_8log_flagIJDpT_EEENS3_IJDpT0_EEE [function] [call site] 00026
10 _ZZN3lg27detailsL11log_convertITpTkNS0_9log_flagsEJETkNS0_16string_like_typeENSt3__112basic_stringIcNS2_11char_traitsIcEENS2_9allocatorIcEEEEEEDaPKcNS0_8log_flagIJDpT_EEERKT0_ENKUlRKS8_E_clESJ_ [function] [call site] 00027
9 void lg2::details::log_conversion::apply_done<std::__1::tuple<lg2::level&, std::__1::source_location const&, char const*&, char const*, unsigned long, char const*> >(std::__1::tuple<lg2::level&, std::__1::source_location const&, char const*&, char const*, unsigned long, char const*> const&) [function] [call site] 00028
3 ipmi::fru::appendData(std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> > const&, std::__1::map<std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> >, std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> >, std::__1::less<std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> > >, std::__1::allocator<std::__1::pair<std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> > const, std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> > > > > const&, std::__1::vector<unsigned char, std::__1::allocator<unsigned char> >&) [function] [call site] 00029
3 ipmi::fru::appendData(std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> > const&, std::__1::map<std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> >, std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> >, std::__1::less<std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> > >, std::__1::allocator<std::__1::pair<std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> > const, std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> > > > > const&, std::__1::vector<unsigned char, std::__1::allocator<unsigned char> >&) [function] [call site] 00030
3 ipmi::fru::postFormatProcessing(std::__1::vector<unsigned char, std::__1::allocator<unsigned char> >&) [function] [call site] 00031
4 ipmi::fru::padData(std::__1::vector<unsigned char, std::__1::allocator<unsigned char> >&) [function] [call site] 00032
4 ipmi::fru::appendDataChecksum(std::__1::vector<unsigned char, std::__1::allocator<unsigned char> >&) [function] [call site] 00033
2 ipmi::fru::buildCommonHeaderSection(unsigned int const&, unsigned short&, std::__1::vector<unsigned char, std::__1::allocator<unsigned char> >&) [function] [call site] 00034
2 ipmi::fru::buildBoardInfoArea(std::__1::map<std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> >, std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> >, std::__1::less<std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> > >, std::__1::allocator<std::__1::pair<std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> > const, std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> > > > > const&) [function] [call site] 00035
3 ipmi::fru::preFormatProcessing(bool, std::__1::vector<unsigned char, std::__1::allocator<unsigned char> >&) [function] [call site] 00036
3 ipmi::fru::appendMfgDate(std::__1::map<std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> >, std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> >, std::__1::less<std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> > >, std::__1::allocator<std::__1::pair<std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> > const, std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> > > > > const&, std::__1::vector<unsigned char, std::__1::allocator<unsigned char> >&) [function] [call site] 00037
4 ipmi::fru::timeStringToRaw(std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> > const&) [function] [call site] 00038
5 __cxa_guard_acquire [call site] 00039
5 __cxa_atexit [call site] 00040
5 __cxa_guard_release [call site] 00041
5 __cxa_guard_abort [call site] 00042
5 timegm [call site] 00043
4 fprintf [call site] 00044
3 ipmi::fru::appendData(std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> > const&, std::__1::map<std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> >, std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> >, std::__1::less<std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> > >, std::__1::allocator<std::__1::pair<std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> > const, std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> > > > > const&, std::__1::vector<unsigned char, std::__1::allocator<unsigned char> >&) [function] [call site] 00045
3 ipmi::fru::appendData(std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> > const&, std::__1::map<std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> >, std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> >, std::__1::less<std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> > >, std::__1::allocator<std::__1::pair<std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> > const, std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> > > > > const&, std::__1::vector<unsigned char, std::__1::allocator<unsigned char> >&) [function] [call site] 00046
3 ipmi::fru::appendData(std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> > const&, std::__1::map<std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> >, std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> >, std::__1::less<std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> > >, std::__1::allocator<std::__1::pair<std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> > const, std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> > > > > const&, std::__1::vector<unsigned char, std::__1::allocator<unsigned char> >&) [function] [call site] 00047
3 ipmi::fru::appendData(std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> > const&, std::__1::map<std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> >, std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> >, std::__1::less<std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> > >, std::__1::allocator<std::__1::pair<std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> > const, std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> > > > > const&, std::__1::vector<unsigned char, std::__1::allocator<unsigned char> >&) [function] [call site] 00048
3 ipmi::fru::postFormatProcessing(std::__1::vector<unsigned char, std::__1::allocator<unsigned char> >&) [function] [call site] 00049
2 ipmi::fru::buildCommonHeaderSection(unsigned int const&, unsigned short&, std::__1::vector<unsigned char, std::__1::allocator<unsigned char> >&) [function] [call site] 00050
2 ipmi::fru::buildProductInfoArea(std::__1::map<std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> >, std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> >, std::__1::less<std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> > >, std::__1::allocator<std::__1::pair<std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> > const, std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> > > > > const&) [function] [call site] 00051
3 ipmi::fru::preFormatProcessing(bool, std::__1::vector<unsigned char, std::__1::allocator<unsigned char> >&) [function] [call site] 00052
3 ipmi::fru::appendData(std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> > const&, std::__1::map<std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> >, std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> >, std::__1::less<std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> > >, std::__1::allocator<std::__1::pair<std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> > const, std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> > > > > const&, std::__1::vector<unsigned char, std::__1::allocator<unsigned char> >&) [function] [call site] 00053
3 ipmi::fru::appendData(std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> > const&, std::__1::map<std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> >, std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> >, std::__1::less<std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> > >, std::__1::allocator<std::__1::pair<std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> > const, std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> > > > > const&, std::__1::vector<unsigned char, std::__1::allocator<unsigned char> >&) [function] [call site] 00054
3 ipmi::fru::appendData(std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> > const&, std::__1::map<std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> >, std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> >, std::__1::less<std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> > >, std::__1::allocator<std::__1::pair<std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> > const, std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> > > > > const&, std::__1::vector<unsigned char, std::__1::allocator<unsigned char> >&) [function] [call site] 00055
3 ipmi::fru::appendData(std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> > const&, std::__1::map<std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> >, std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> >, std::__1::less<std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> > >, std::__1::allocator<std::__1::pair<std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> > const, std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> > > > > const&, std::__1::vector<unsigned char, std::__1::allocator<unsigned char> >&) [function] [call site] 00056
3 ipmi::fru::appendData(std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> > const&, std::__1::map<std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> >, std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> >, std::__1::less<std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> > >, std::__1::allocator<std::__1::pair<std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> > const, std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> > > > > const&, std::__1::vector<unsigned char, std::__1::allocator<unsigned char> >&) [function] [call site] 00057
3 ipmi::fru::postFormatProcessing(std::__1::vector<unsigned char, std::__1::allocator<unsigned char> >&) [function] [call site] 00058
2 ipmi::fru::buildCommonHeaderSection(unsigned int const&, unsigned short&, std::__1::vector<unsigned char, std::__1::allocator<unsigned char> >&) [function] [call site] 00059
2 ipmi::fru::appendDataChecksum(std::__1::vector<unsigned char, std::__1::allocator<unsigned char> >&) [function] [call site] 00060