Fuzz introspector: common_handler_fuzzer
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
7 88 pw::string::FormatVaList(pw::span , char const*, __va_list_tag*) call site: {node_id}
5 63 pw::StringBuilder::ResizeAndTerminate(unsigned long) call site: {node_id}
3 80 pw::string::FormatVaList(pw::span , char const*, __va_list_tag*) call site: {node_id}
2 2 bt::l2cap::internal::fuzz(unsigned char const*, unsigned long) call site: {node_id}
2 30 pw::StringBuilder::StatusCode(pw::Status) call site: {node_id}
1 9 bt::DynamicByteBuffer::DynamicByteBuffer(unsigned long) call site: {node_id}
1 18 bt::l2cap::internal::CommandHandler::Response::ParseReject(bt::ByteBuffer const&) call site: {node_id}
1 26 pw::StringBuffer<150ul>::StringBuffer() call site: {node_id}
1 28 pw::OkStatus() call site: {node_id}
1 101 pw::StringBuilder::HandleStatusWithSize(pw::StatusWithSize) call site: {node_id}
1 149 bt::ByteBuffer::view(unsigned long, unsigned long) const call site: {node_id}
1 158 bt::l2cap::internal::CommandHandler::Response::ParseReject(bt::ByteBuffer const&) call site: {node_id}

Fuzzer calltree

0 LLVMFuzzerTestOneInput [function] [call site] 00000
1 bt::l2cap::internal::fuzz(unsigned char const*, unsigned long) [function] [call site] 00001
2 bt::DynamicByteBuffer::DynamicByteBuffer(unsigned long) [function] [call site] 00002
3 bt::MutableByteBuffer::MutableByteBuffer() [function] [call site] 00003
4 bt::ByteBuffer::ByteBuffer() [function] [call site] 00004
3 _pw_assert_ConditionCannotContainThePercentCharacter(char const*, ...) [function] [call site] 00005
3 fflush [call site] 00006
3 fprintf [call site] 00007
3 abort [call site] 00008
3 bt::MutableByteBuffer::~MutableByteBuffer() [function] [call site] 00009
4 bt::ByteBuffer::~ByteBuffer() [function] [call site] 00010
2 bt::DynamicByteBuffer::mutable_data() [function] [call site] 00011
2 bt::DynamicByteBuffer::~DynamicByteBuffer() [function] [call site] 00012
3 bt::MutableByteBuffer::~MutableByteBuffer() [function] [call site] 00013
2 bt::l2cap::internal::TestResponse::TestResponse(bt::l2cap::internal::SignalingChannelInterface::Status) [function] [call site] 00014
3 bt::l2cap::internal::CommandHandler::Response::Response(bt::l2cap::internal::SignalingChannelInterface::Status) [function] [call site] 00015
2 bt::l2cap::internal::TestResponse::TestParseReject(bt::ByteBuffer const&) [function] [call site] 00016
3 bt::l2cap::internal::CommandHandler::Response::ParseReject(bt::ByteBuffer const&) [function] [call site] 00017
4 bt::GetPwLogFlags(bt::LogSeverity) [function] [call site] 00018
5 bt::IsPrintfLogLevelEnabled(bt::LogSeverity) [function] [call site] 00019
4 pw_Log [function] [call site] 00020
5 pw_Log_HandleMessageVaList [function] [call site] 00021
6 pw::StringBuffer<150ul>::StringBuffer() [function] [call site] 00022
7 pw::span<char, 18446744073709551615ul>::span<150ul, void>(char (&) [150ul]) [function] [call site] 00023
8 pw::span<char, 18446744073709551615ul>::span(char*, unsigned long) [function] [call site] 00024
9 pw::pw_span_internal::ExtentStorage<18446744073709551615ul>::ExtentStorage(unsigned long) [function] [call site] 00025
7 pw::StringBuilder::StringBuilder(pw::span<char, 18446744073709551615ul>) [function] [call site] 00026
8 pw::OkStatus() [function] [call site] 00027
9 pw::Status::Status(pw_Status) [function] [call site] 00028
8 pw::StringBuilder::StatusCode(pw::Status) [function] [call site] 00029
9 pw::Status::code() const [function] [call site] 00030
8 pw::OkStatus() [function] [call site] 00031
8 pw::StringBuilder::StatusCode(pw::Status) [function] [call site] 00032
8 pw::StringBuilder::NullTerminate() [function] [call site] 00033
9 pw::span<char, 18446744073709551615ul>::empty() const [function] [call site] 00034
10 pw::span<char, 18446744073709551615ul>::size() const [function] [call site] 00035
11 pw::pw_span_internal::ExtentStorage<18446744073709551615ul>::size() const [function] [call site] 00036
9 pw::StringBuilder::size() const [function] [call site] 00037
9 pw::span<char, 18446744073709551615ul>::operator[](unsigned long) const [function] [call site] 00038
10 pw::span<char, 18446744073709551615ul>::data() const [function] [call site] 00039
6 pw::log_basic::(anonymous namespace)::LogLevelToLogLevelName(int) [function] [call site] 00040
6 pw::StringBuffer<150ul>& pw::StringBuffer<150ul>::operator<< <char const*>(char const*&&) [function] [call site] 00041
7 pw::StringBuilder& pw::StringBuilder::operator<< <char const*>(char const* const&) [function] [call site] 00042
8 pw::StringBuilder::append(char const*) [function] [call site] 00043
9 pw::span<char, 18446744073709551615ul>::size() const [function] [call site] 00044
9 pw::StringBuilder::size() const [function] [call site] 00045
9 pw::string::ClampedCString(char const*, unsigned long) [function] [call site] 00046
10 pw::span<char const, 18446744073709551615ul>::span(char const*, unsigned long) [function] [call site] 00047
10 pw::string::ClampedCString(pw::span<char const, 18446744073709551615ul>) [function] [call site] 00048
11 pw::span<char const, 18446744073709551615ul>::data() const [function] [call site] 00049
11 pw::span<char const, 18446744073709551615ul>::data() const [function] [call site] 00050
11 pw::span<char const, 18446744073709551615ul>::size() const [function] [call site] 00051
11 pw::string::internal::ClampedLength(char const*, unsigned long) [function] [call site] 00052
9 pw::StringBuilder::append(std::__1::basic_string_view<char, std::__1::char_traits<char> >) [function] [call site] 00053
10 pw::StringBuilder::append(char const*, unsigned long) [function] [call site] 00054
11 pw::span<char, 18446744073709551615ul>::data() const [function] [call site] 00055
11 pw::StringBuilder::size() const [function] [call site] 00056
11 pw::StringBuilder::ResizeAndTerminate(unsigned long) [function] [call site] 00057
12 pw::StringBuilder::max_size() const [function] [call site] 00058
13 pw::span<char, 18446744073709551615ul>::empty() const [function] [call site] 00059
13 pw::span<char, 18446744073709551615ul>::size() const [function] [call site] 00060
12 pw::StringBuilder::size() const [function] [call site] 00061
12 pw::StringBuilder::NullTerminate() [function] [call site] 00062
12 pw::span<char, 18446744073709551615ul>::empty() const [function] [call site] 00063
12 pw::Status::ResourceExhausted() [function] [call site] 00064
13 pw::Status::Status(pw_Status) [function] [call site] 00065
12 pw::StringBuilder::SetErrorStatus(pw::Status) [function] [call site] 00066
13 pw::StringBuilder::StatusCode(pw::Status) [function] [call site] 00067
13 pw::StringBuilder::StatusCode(pw::Status) [function] [call site] 00068
12 pw::OkStatus() [function] [call site] 00069
12 pw::StringBuilder::StatusCode(pw::Status) [function] [call site] 00070
6 pw::StringBuffer<150ul>& pw::StringBuffer<150ul>::operator<< <char const (&) [3]>(char const (&) [3]) [function] [call site] 00071
7 pw::StringBuilder& pw::StringBuilder::operator<< <char [3]>(char const (&) [3]) [function] [call site] 00072
6 pw::StringBuilder::FormatVaList(char const*, __va_list_tag*) [function] [call site] 00073
7 pw::StringBuilder::size() const [function] [call site] 00074
7 pw::span<char, 18446744073709551615ul>::subspan(unsigned long, unsigned long) const [function] [call site] 00075
8 pw::span<char, 18446744073709551615ul>::data() const [function] [call site] 00076
8 pw::span<char, 18446744073709551615ul>::size() const [function] [call site] 00077
8 pw::span<char, 18446744073709551615ul>::span(char*, unsigned long) [function] [call site] 00078
7 pw::string::FormatVaList(pw::span<char, 18446744073709551615ul>, char const*, __va_list_tag*) [function] [call site] 00079
8 pw::span<char, 18446744073709551615ul>::empty() const [function] [call site] 00080
8 pw::StatusWithSize::ResourceExhausted(unsigned long) [function] [call site] 00081
9 pw::Status::ResourceExhausted() [function] [call site] 00082
9 pw::StatusWithSize::StatusWithSize(pw::Status, unsigned long) [function] [call site] 00083
10 pw::Status::code() const [function] [call site] 00084
10 pw::StatusWithSize::StatusWithSize<unsigned long, void>(unsigned long) [function] [call site] 00085
8 pw::span<char, 18446744073709551615ul>::data() const [function] [call site] 00086
8 pw::span<char, 18446744073709551615ul>::size() const [function] [call site] 00087
8 vsnprintf [call site] 00088
8 pw::span<char, 18446744073709551615ul>::operator[](unsigned long) const [function] [call site] 00089
8 pw::StatusWithSize::InvalidArgument(unsigned long) [function] [call site] 00090
9 pw::Status::InvalidArgument() [function] [call site] 00091
10 pw::Status::Status(pw_Status) [function] [call site] 00092
9 pw::StatusWithSize::StatusWithSize(pw::Status, unsigned long) [function] [call site] 00093
8 pw::span<char, 18446744073709551615ul>::size() const [function] [call site] 00094
8 pw::StatusWithSize::ResourceExhausted(unsigned long) [function] [call site] 00095
8 pw::StatusWithSize::StatusWithSize<int, void>(int) [function] [call site] 00096
7 pw::StringBuilder::HandleStatusWithSize(pw::StatusWithSize) [function] [call site] 00097
8 pw::StatusWithSize::status() const [function] [call site] 00098
9 pw::Status::Status(pw_Status) [function] [call site] 00099
8 pw::StringBuilder::StatusCode(pw::Status) [function] [call site] 00100
8 pw::Status::ok() const [function] [call site] 00101
8 pw::StringBuilder::StatusCode(pw::Status) [function] [call site] 00102
8 pw::StatusWithSize::size() const [function] [call site] 00103
6 pw::StringBuilder::operator std::__1::basic_string_view<char, std::__1::char_traits<char> >() const [function] [call site] 00104
7 pw::StringBuilder::view() const [function] [call site] 00105
8 pw::StringBuilder::data() const [function] [call site] 00106
9 pw::span<char, 18446744073709551615ul>::data() const [function] [call site] 00107
8 pw::StringBuilder::size() const [function] [call site] 00108
4 bt::internal::CheckFormat(char const*, ...) [function] [call site] 00109
4 _ZNK2bt10ByteBuffer10ReadMemberITnDaXadL_ZNS_5l2cap20CommandRejectPayload6reasonEEEEEDav [function] [call site] 00110
5 _pw_assert_ConditionCannotContainThePercentCharacter(char const*, ...) [function] [call site] 00111
5 fflush [call site] 00112
5 fprintf [call site] 00113
5 abort [call site] 00114
5 bt_lib_cpp_type::MemberPointerTraits<&bt::l2cap::CommandRejectPayload::reason>::offset() [function] [call site] 00115
5 bt::ByteBuffer::CopyRaw(void*, unsigned long, unsigned long, unsigned long) const [function] [call site] 00116
6 _pw_assert_ConditionCannotContainThePercentCharacter(char const*, ...) [function] [call site] 00117
6 fflush [call site] 00118
6 fprintf [call site] 00119
6 abort [call site] 00120
6 _pw_assert_ConditionCannotContainThePercentCharacter(char const*, ...) [function] [call site] 00121
6 fflush [call site] 00122
6 fprintf [call site] 00123
6 abort [call site] 00124
6 _pw_assert_ConditionCannotContainThePercentCharacter(char const*, ...) [function] [call site] 00125
6 fflush [call site] 00126
6 fprintf [call site] 00127
6 abort [call site] 00128
6 _pw_assert_ConditionCannotContainThePercentCharacter(char const*, ...) [function] [call site] 00129
6 fflush [call site] 00130
6 fprintf [call site] 00131
6 abort [call site] 00132
6 _pw_assert_ConditionCannotContainThePercentCharacter(char const*, ...) [function] [call site] 00133
6 fflush [call site] 00134
6 fprintf [call site] 00135
6 abort [call site] 00136
4 unsigned short pw::bytes::ConvertOrderFrom<unsigned short>(cpp20::endian, unsigned short) [function] [call site] 00137
5 unsigned short pw::bytes::ConvertOrder<unsigned short>(cpp20::endian, cpp20::endian, unsigned short) [function] [call site] 00138
6 unsigned short pw::bytes::internal::ReverseBytes<unsigned short>(unsigned short) [function] [call site] 00139
4 bt::l2cap::internal::CommandHandler::Response::reject_reason() const [function] [call site] 00140
4 bt::GetPwLogFlags(bt::LogSeverity) [function] [call site] 00141
4 bt::internal::CheckFormat(char const*, ...) [function] [call site] 00143
4 bt::ByteBuffer::view(unsigned long, unsigned long) const [function] [call site] 00144
5 _pw_assert_ConditionCannotContainThePercentCharacter(char const*, ...) [function] [call site] 00145
5 fflush [call site] 00146
5 fprintf [call site] 00147
5 abort [call site] 00148
5 bt::BufferView::BufferView(void const*, unsigned long) [function] [call site] 00149
6 bt::ByteBuffer::ByteBuffer() [function] [call site] 00150
6 _pw_assert_ConditionCannotContainThePercentCharacter(char const*, ...) [function] [call site] 00151
6 fflush [call site] 00152
6 fprintf [call site] 00153
6 abort [call site] 00154
6 bt::ByteBuffer::~ByteBuffer() [function] [call site] 00155
4 auto bt::ByteBuffer::To<bt::l2cap::InvalidCIDPayload>() const [function] [call site] 00156
5 bt::ByteBuffer::CopyRaw(void*, unsigned long, unsigned long, unsigned long) const [function] [call site] 00157
4 bt::BufferView::~BufferView() [function] [call site] 00158
5 bt::ByteBuffer::~ByteBuffer() [function] [call site] 00159
4 unsigned short pw::bytes::ConvertOrderFrom<unsigned short>(cpp20::endian, unsigned short) [function] [call site] 00160
4 unsigned short pw::bytes::ConvertOrderFrom<unsigned short>(cpp20::endian, unsigned short) [function] [call site] 00161