Fuzz introspector: eh_frame_hdr
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
34 69 AddrHeader::parse call site: 00069 read::skip
24 19 Reader::read_u32 call site: 00019 SubRange::read_slice
5 51 Endianity::read_u32 call site: 00051 Reader::read_u64
3 65 Endianity::read_u64 call site: 00065
3 113 Endianity::read_u16 call site: 00113
3 120 Reader::read_u8 call site: 00120
2 4 EhFrameHdr::new call site: 00004
2 105 Reader::read_u8 call site: 00105
2 128 AddrHeader::parse call site: 00128
2 131 AddrHeader::parse call site: 00131 Reader::read_u8
1 0 EP call site: 00000
1 2 EhFrameHdr::new call site: 00002

Fuzzer calltree

0 fuzz_target [function] [call site] 00000
1 EhFrameHdr::new [function] [call site] 00001
2 DebugFrameOffset::from [function] [call site] 00002
3 DebugFrameOffset [function] [call site] 00003
2 EndianSlice::new [function] [call site] 00004
1 LineEncoding::default [function] [call site] 00005
1 BaseAddresses::set_eh_frame [function] [call site] 00006
1 BaseAddresses::set_eh_frame_hdr [function] [call site] 00008
1 BaseAddresses::set_text [function] [call site] 00011
1 BaseAddresses::set_got [function] [call site] 00014
1 AddrHeader::parse [function] [call site] 00016
2 Reader::read_initial_length [function] [call site] 00017
3 Reader::read_u32 [function] [call site] 00018
4 Reader::read_u8_array [function] [call site] 00019
5 LineEncoding::default [function] [call site] 00020
5 EndianReader::read_slice [function] [call site] 00021
6 SubRange::read_slice [function] [call site] 00022
7 SubRange::len [function] [call site] 00023
7 slice::from_raw_parts [function] [call site] 00024
7 SubRange::skip [function] [call site] 00025
8 AbbreviationTable::add [function] [call site] 00026
9 insert_full [function] [call site] 00027
6 EndianVec::len [function] [call site] 00029
7 EndianVec::len [function] [call site] 00030
8 EndianVec::len [function] [call site] 00031
6 Vec::copy_from_slice [function] [call site] 00032
6 Error::UnexpectedEof [function] [call site] 00035
6 EndianReader::offset_id [function] [call site] 00036
7 read::ReaderOffsetId [function] [call site] 00037
7 EndianReader::bytes [function] [call site] 00038
8 SubRange::bytes [function] [call site] 00039
9 slice::from_raw_parts [function] [call site] 00040
7 &[u8]::as_ptr [function] [call site] 00041
5 <A [call site] 00042
4 EndianReader::endian [function] [call site] 00045
4 Endianity::read_u32 [function] [call site] 00046
5 RunTimeEndian::is_big_endian [function] [call site] 00049
5 u32::from_be_bytes [function] [call site] 00050
5 u32::from_le_bytes [function] [call site] 00051
3 Self::Offset::from_u32 [function] [call site] 00053
4 DebugFrameOffset::from [function] [call site] 00054
5 DebugFrameOffset [function] [call site] 00055
3 Reader::read_u64 [function] [call site] 00056
4 Reader::read_u8_array [function] [call site] 00057
4 EndianReader::endian [function] [call site] 00059
4 Endianity::read_u64 [function] [call site] 00060
5 RunTimeEndian::is_big_endian [function] [call site] 00063
5 u64::from_be_bytes [function] [call site] 00064
5 u64::from_le_bytes [function] [call site] 00065
3 Result::and_then [function] [call site] 00066
2 EndianReader::split [function] [call site] 00069
3 EndianReader::len [function] [call site] 00070
4 EndianVec::len [function] [call site] 00071
3 Error::UnexpectedEof [function] [call site] 00073
3 EndianReader::offset_id [function] [call site] 00074
3 ArrayVec::clone [function] [call site] 00075
4 LineEncoding::default [function] [call site] 00076
4 ArrayVec::try_push [function] [call site] 00077
5 [T; [call site] 00078
5 Self::Storage::len [function] [call site] 00079
6 EndianVec::len [function] [call site] 00080
5 Vec::grow [function] [call site] 00081
6 core::mem::replace [function] [call site] 00082
6 Expression::new [function] [call site] 00083
7 LineEncoding::default [function] [call site] 00084
6 DebugFrameOffset::into [function] [call site] 00085
6 Vec::reserve [function] [call site] 00086
6 Vec::set_len [function] [call site] 00087
6 Vec::capacity [function] [call site] 00088
6 Vec::into_boxed_slice [function] [call site] 00089
5 [T; [call site] 00091
5 Expression::new [function] [call site] 00092
6 LineEncoding::default [function] [call site] 00093
4 ArrayVec::clone [function] [call site] 00095
5 LineEncoding::default [function] [call site] 00096
5 ArrayVec::try_push [function] [call site] 00097
5 ArrayVec::clone [function] [call site] 00098
5 Result::unwrap [function] [call site] 00099
4 Result::unwrap [function] [call site] 00100
3 SubRange::truncate [function] [call site] 00101
3 read::skip [function] [call site] 00102
4 Reader::read_u8 [function] [call site] 00103
5 Reader::read_u8_array [function] [call site] 00104
2 Endianity::read_u16 [function] [call site] 00108
3 RunTimeEndian::is_big_endian [function] [call site] 00111
3 u16::from_be_bytes [function] [call site] 00112
3 u16::from_le_bytes [function] [call site] 00113
2 Error::UnknownVersion [function] [call site] 00115
2 DebugFrameOffset::from [function] [call site] 00116
2 Reader::read_address_size [function] [call site] 00117
3 Reader::read_u8 [function] [call site] 00118
4 Reader::read_u8_array [function] [call site] 00119
3 Error::UnsupportedAddressSize [function] [call site] 00123
2 Reader::read_u8 [function] [call site] 00124
3 Reader::read_u8_array [function] [call site] 00125
2 Format::initial_length_size [function] [call site] 00128
2 Error::UnsupportedAddressSize [function] [call site] 00130
2 R::Offset::from_u8 [function] [call site] 00134
3 DebugFrameOffset::from [function] [call site] 00135