Fuzz introspector: FuzzTTF

Fuzz blockers

The followings nodes represent call sites where fuzz blockers occur

Amount of callsites blocked Calltree index Parent function Callsite Largest blocked function
52 67 TTF::Font::try_load_from_offset(AK::Span , unsigned int) call site __assert_fail
5 135 TTF::Font::try_load_from_offset(AK::Span , unsigned int) call site
1 2 LLVMFuzzerTestOneInput call site
1 9 bool AK::Checked ::addition_would_overflow (unsigned long, unsigned long) call site __assert_fail
1 31 TTF::Font::try_load_from_offset(AK::Span , unsigned int) call site __assert_fail
1 142 TTF::Font::try_load_from_offset(AK::Span , unsigned int) call site
1 144 AK::RefCounted ::unref() const call site

Fuzzer calltree

0 LLVMFuzzerTestOneInput [function] [call site2] 00000
1 AK::Span ::Span(unsigned char const*, unsigned long) [function] [call site2] 00001
1 TTF::Font::try_load_from_externally_owned_memory(AK::Span , unsigned int) [function] [call site2] 00002
2 bool AK::Checked ::addition_would_overflow (unsigned long, unsigned long) [function] [call site2] 00003
3 AK::Checked ::Checked() [function] [call site2] 00004
3 AK::Checked & AK::Checked ::operator= (unsigned long) [function] [call site2] 00005
4 AK::Checked ::Checked(unsigned long) [function] [call site2] 00006
3 AK::Checked ::operator+=(unsigned long) [function] [call site2] 00007
4 AK::Checked ::add(unsigned long) [function] [call site2] 00008
3 AK::Checked ::has_overflow() const [function] [call site2] 00009
2 __assert_fail [call site2] 00010
2 AK::Error::from_string_literal(AK::StringView) [function] [call site2] 00011
3 AK::Error::Error(AK::StringView) [function] [call site2] 00012
2 TTF::be_u32(unsigned char const*) [function] [call site2] 00013
2 TTF::tag_from_str(char const*) [function] [call site2] 00014
3 TTF::be_u32(unsigned char const*) [function] [call site2] 00015
2 AK::Error::from_string_literal(AK::StringView) [function] [call site2] 00016
2 TTF::be_u32(unsigned char const*) [function] [call site2] 00017
2 TTF::Font::try_load_from_offset(AK::Span , unsigned int) [function] [call site2] 00018
3 bool AK::Checked ::addition_would_overflow (unsigned int, unsigned int) [function] [call site2] 00019
3 AK::Error::from_string_literal(AK::StringView) [function] [call site2] 00020
3 AK::Error::from_string_literal(AK::StringView) [function] [call site2] 00021
3 TTF::be_u16(unsigned char const*) [function] [call site2] 00022
3 AK::Error::from_string_literal(AK::StringView) [function] [call site2] 00023
3 TTF::be_u32(unsigned char const*) [function] [call site2] 00024
3 TTF::be_u32(unsigned char const*) [function] [call site2] 00025
3 TTF::be_u32(unsigned char const*) [function] [call site2] 00026
3 bool AK::Checked ::addition_would_overflow (unsigned int, unsigned int) [function] [call site2] 00027
3 AK::Error::from_string_literal(AK::StringView) [function] [call site2] 00028
3 AK::Error::from_string_literal(AK::StringView) [function] [call site2] 00029
3 AK::Span ::Span(unsigned char const*, unsigned long) [function] [call site2] 00030
3 TTF::tag_from_str(char const*) [function] [call site2] 00031
3 __assert_fail [call site2] 00032
3 TTF::tag_from_str(char const*) [function] [call site2] 00033
3 TTF::tag_from_str(char const*) [function] [call site2] 00034
3 TTF::tag_from_str(char const*) [function] [call site2] 00035
3 TTF::tag_from_str(char const*) [function] [call site2] 00036
3 TTF::tag_from_str(char const*) [function] [call site2] 00037
3 TTF::tag_from_str(char const*) [function] [call site2] 00038
3 TTF::tag_from_str(char const*) [function] [call site2] 00039
3 TTF::tag_from_str(char const*) [function] [call site2] 00040
3 TTF::tag_from_str(char const*) [function] [call site2] 00041
3 TTF::Head::from_slice(AK::Span ) [function] [call site2] 00042
4 TTF::Head::Head(AK::Span ) [function] [call site2] 00043
3 AK::Error::from_string_literal(AK::StringView) [function] [call site2] 00044
3 TTF::Name::from_slice(AK::Span ) [function] [call site2] 00045
4 TTF::Name::Name(AK::Span ) [function] [call site2] 00046
3 AK::Error::from_string_literal(AK::StringView) [function] [call site2] 00047
3 TTF::Hhea::from_slice(AK::Span ) [function] [call site2] 00048
4 TTF::Hhea::Hhea(AK::Span ) [function] [call site2] 00049
3 AK::Error::from_string_literal(AK::StringView) [function] [call site2] 00050
3 TTF::Maxp::from_slice(AK::Span ) [function] [call site2] 00051
4 TTF::Maxp::Maxp(AK::Span ) [function] [call site2] 00052
3 AK::Error::from_string_literal(AK::StringView) [function] [call site2] 00053
3 TTF::Maxp::num_glyphs() const [function] [call site2] 00054
4 TTF::be_u16(unsigned char const*) [function] [call site2] 00055
3 AK::Error::from_string_literal(AK::StringView) [function] [call site2] 00056
3 TTF::Cmap::from_slice(AK::Span ) [function] [call site2] 00057
4 TTF::Cmap::Cmap(AK::Span ) [function] [call site2] 00058
3 AK::Error::from_string_literal(AK::StringView) [function] [call site2] 00059
3 TTF::Maxp::num_glyphs() const [function] [call site2] 00060
3 TTF::Loca::from_slice(AK::Span , unsigned int, TTF::IndexToLocFormat) [function] [call site2] 00061
4 TTF::Loca::Loca(AK::Span , unsigned int, TTF::IndexToLocFormat) [function] [call site2] 00062
3 AK::Error::from_string_literal(AK::StringView) [function] [call site2] 00063
3 AK::Error::from_string_literal(AK::StringView) [function] [call site2] 00064
3 TTF::Glyf::Glyf(AK::Span ) [function] [call site2] 00065
3 AK::Error::from_string_literal(AK::StringView) [function] [call site2] 00066
3 TTF::OS2::OS2(AK::Span ) [function] [call site2] 00067
3 TTF::Kern::from_slice(AK::Span ) [function] [call site2] 00068
4 AK::Error::from_string_literal(AK::StringView) [function] [call site2] 00069
4 TTF::be_u16(unsigned char const*) [function] [call site2] 00070
4 TTF::be_u16(unsigned char const*) [function] [call site2] 00071
4 AK::Error::from_string_literal(AK::StringView) [function] [call site2] 00072
4 AK::Error::from_string_literal(AK::StringView) [function] [call site2] 00073
4 AK::FixedArray ::try_create(unsigned long) [function] [call site2] 00074
5 AK::FixedArray ::FixedArray() [function] [call site2] 00075
5 AK::ErrorOr , AK::Error>::VariantConstructors(AK::FixedArray &&) [function] [call site2] 00076
6 AK::Variant , AK::Error>::VariantConstructors(AK::FixedArray &&) [function] [call site2] 00077
7 AK::Detail::InheritFromPacks , AK::Detail::ParameterPack , AK::Variant , AK::Error> > >, AK::Detail::ParameterPack , AK::Error> > > >::InheritFromPacks(AK::FixedArray &&) [function] [call site2] 00078
8 AK::Detail::InheritFromUniqueEntries<0u, AK::Detail::ParameterPack , AK::Variant , AK::Error> > >, AK::Detail::IntegerSequence , AK::Detail::ParameterPack , AK::Variant , AK::Error> > >, AK::Detail::ParameterPack , AK::Error> > > >::InheritFromUniqueEntries(AK::FixedArray &&) [function] [call site2] 00079
9 void AK::Variant , AK::Error>::set , AK::FixedArray >(AK::FixedArray &&, AK::Detail::VariantNoClearTag) [function] [call site2] 00080
10 AK::FixedArray ::FixedArray(AK::FixedArray &&) [function] [call site2] 00081
5 AK::Checked ::Checked (unsigned long) [function] [call site2] 00082
6 bool AK::is_within_range (unsigned long) [function] [call site2] 00083
7 AK::TypeBoundsChecker ::is_within_range(unsigned long) [function] [call site2] 00084
5 kmalloc_array(AK::Checked , AK::Checked ) [function] [call site2] 00085
6 AK::Checked AK::operator* (AK::Checked const&, AK::Checked const&) [function] [call site2] 00086
7 __assert_fail [call site2] 00087
7 AK::Checked ::mul(unsigned long) [function] [call site2] 00088
6 AK::Checked ::has_overflow() const [function] [call site2] 00089
6 __assert_fail [call site2] 00090
6 __assert_fail [call site2] 00091
5 AK::Error::from_errno(int) [function] [call site2] 00092
6 AK::Error::Error(int) [function] [call site2] 00093
5 AK::FixedArray ::FixedArray(unsigned long, unsigned long*) [function] [call site2] 00094
5 AK::ErrorOr , AK::Error>::VariantConstructors(AK::FixedArray &&) [function] [call site2] 00095
4 AK::ErrorOr , AK::Error>::is_error() const [function] [call site2] 00096
5 bool AK::Variant , AK::Error>::has () const [function] [call site2] 00097
6 unsigned char AK::Variant , AK::Error>::index_of () [function] [call site2] 00098
4 AK::FixedArray * AK::bit_cast *, void*>(void* const&) [function] [call site2] 00099
4 AK::FixedArray ::~FixedArray() [function] [call site2] 00100
5 kfree_sized(void*, unsigned long) [function] [call site2] 00101
4 AK::Error* AK::bit_cast (void* const&) [function] [call site2] 00102
4 AK::Error::from_string_literal(AK::StringView) [function] [call site2] 00103
4 AK::FixedArray ::operator[](unsigned long) [function] [call site2] 00104
5 AK::FixedArray ::at(unsigned long) [function] [call site2] 00105
6 __assert_fail [call site2] 00106
4 __assert_fail [call site2] 00107
4 TTF::be_u16(unsigned char const*) [function] [call site2] 00108
4 AK::FixedArray ::FixedArray(AK::FixedArray &&) [function] [call site2] 00109
4 TTF::Kern::Kern(AK::Span , AK::FixedArray ) [function] [call site2] 00110
5 AK::FixedArray ::FixedArray(AK::FixedArray &&) [function] [call site2] 00111
4 AK::ErrorOr ::VariantConstructors(TTF::Kern&&) [function] [call site2] 00112
4 AK::FixedArray ::~FixedArray() [function] [call site2] 00113
3 AK::ErrorOr ::is_error() const [function] [call site2] 00114
3 TTF::Kern::~Kern() [function] [call site2] 00115
4 AK::FixedArray ::~FixedArray() [function] [call site2] 00116
3 TTF::Kern::Kern(TTF::Kern&&) [function] [call site2] 00117
3 TTF::Kern::~Kern() [function] [call site2] 00118
3 TTF::Kern::Kern(TTF::Kern&&) [function] [call site2] 00119
3 TTF::Cmap::num_subtables() const [function] [call site2] 00120
4 TTF::be_u16(unsigned char const*) [function] [call site2] 00121
3 TTF::Cmap::subtable(unsigned int) const [function] [call site2] 00122
4 TTF::Cmap::num_subtables() const [function] [call site2] 00123
4 TTF::be_u16(unsigned char const*) [function] [call site2] 00124
4 TTF::be_u16(unsigned char const*) [function] [call site2] 00125
4 TTF::be_u32(unsigned char const*) [function] [call site2] 00126
4 AK::Span ::Span(unsigned char const*, unsigned long) [function] [call site2] 00127
4 TTF::Cmap::Subtable::Subtable(AK::Span , unsigned short, unsigned short) [function] [call site2] 00128
3 TTF::Cmap::Subtable::platform_id() const [function] [call site2] 00129
3 AK::Error::from_string_literal(AK::StringView) [function] [call site2] 00130
3 TTF::Cmap::Subtable::encoding_id() const [function] [call site2] 00131
3 TTF::Cmap::set_active_index(unsigned int) [function] [call site2] 00132
3 TTF::Cmap::Subtable::encoding_id() const [function] [call site2] 00133
3 TTF::Cmap::set_active_index(unsigned int) [function] [call site2] 00134
3 TTF::Font::Font(AK::Span , TTF::Head&&, TTF::Name&&, TTF::Hhea&&, TTF::Maxp&&, TTF::Hmtx&&, TTF::Cmap&&, TTF::Loca&&, TTF::Glyf&&, TTF::OS2&&, AK::Optional &&) [function] [call site2] 00135
4 Gfx::VectorFont::VectorFont() [function] [call site2] 00136
5 AK::RefCounted ::RefCounted() [function] [call site2] 00137
6 AK::RefCountedBase::RefCountedBase() [function] [call site2] 00138
4 AK::RefPtr >::RefPtr() [function] [call site2] 00139
4 TTF::Kern::Kern(TTF::Kern&&) [function] [call site2] 00140
3 AK::NonnullRefPtr AK::adopt_ref (TTF::Font&) [function] [call site2] 00141
3 AK::ErrorOr , AK::Error>::VariantConstructors(AK::NonnullRefPtr &&) [function] [call site2] 00142
3 AK::RefCounted ::unref() const [function] [call site2] 00143
4 __assert_fail [call site2] 00144
3 TTF::Kern::~Kern() [function] [call site2] 00145
2 TTF::tag_from_str(char const*) [function] [call site2] 00146
2 AK::Error::from_string_literal(AK::StringView) [function] [call site2] 00147
2 AK::Error::from_string_literal(AK::StringView) [function] [call site2] 00148
2 TTF::Font::try_load_from_offset(AK::Span , unsigned int) [function] [call site2] 00149