#[repr(C)]pub struct Section32<E: Endian> {
pub sectname: [u8; 16],
pub segname: [u8; 16],
pub addr: U32<E>,
pub size: U32<E>,
pub offset: U32<E>,
pub align: U32<E>,
pub reloff: U32<E>,
pub nreloc: U32<E>,
pub flags: U32<E>,
pub reserved1: U32<E>,
pub reserved2: U32<E>,
}
Expand description
32-bit section.
Fields§
§sectname: [u8; 16]
name of this section
segname: [u8; 16]
segment this section goes in
addr: U32<E>
memory address of this section
size: U32<E>
size in bytes of this section
offset: U32<E>
file offset of this section
align: U32<E>
section alignment (power of 2)
reloff: U32<E>
file offset of relocation entries
nreloc: U32<E>
number of relocation entries
flags: U32<E>
flags (section type and attributes)
reserved1: U32<E>
reserved (for offset or index)
reserved2: U32<E>
reserved (for count or sizeof)
Trait Implementations§
source§impl<Endian: Endian> Section for Section32<Endian>
impl<Endian: Endian> Section for Section32<Endian>
type Word = u32
type Endian = Endian
fn sectname(&self) -> &[u8; 16]
fn segname(&self) -> &[u8; 16]
fn addr(&self, endian: Self::Endian) -> Self::Word
fn size(&self, endian: Self::Endian) -> Self::Word
fn offset(&self, endian: Self::Endian) -> u32
fn align(&self, endian: Self::Endian) -> u32
fn reloff(&self, endian: Self::Endian) -> u32
fn nreloc(&self, endian: Self::Endian) -> u32
fn flags(&self, endian: Self::Endian) -> u32
source§fn segment_name(&self) -> &[u8] ⓘ
fn segment_name(&self) -> &[u8] ⓘ
Return the
segname
bytes up until the null terminator.source§fn file_range(&self, endian: Self::Endian) -> Option<(u64, u64)>
fn file_range(&self, endian: Self::Endian) -> Option<(u64, u64)>
Return the offset and size of the section in the file. Read more
source§fn data<'data, R: ReadRef<'data>>(
&self,
endian: Self::Endian,
data: R
) -> Result<&'data [u8], ()>
fn data<'data, R: ReadRef<'data>>(
&self,
endian: Self::Endian,
data: R
) -> Result<&'data [u8], ()>
Return the section data. Read more
source§fn relocations<'data, R: ReadRef<'data>>(
&self,
endian: Self::Endian,
data: R
) -> Result<&'data [Relocation<Self::Endian>]>
fn relocations<'data, R: ReadRef<'data>>(
&self,
endian: Self::Endian,
data: R
) -> Result<&'data [Relocation<Self::Endian>]>
Return the relocation array. Read more