Struct mer::section::SectionHeader
source · #[repr(C)]pub struct SectionHeader {
pub name: u32,
pub section_type: u32,
pub flags: u64,
pub address: u64,
pub offset: u64,
pub size: u64,
pub link: u32,
pub info: u32,
pub alignment: u64,
pub entry_size: u64,
}
Fields§
§name: u32
§section_type: u32
§flags: u64
§address: u64
§offset: u64
§size: u64
§link: u32
Some sections are ‘linked’ to another section. This field contains the index of the linked section.
info: u32
Can contain extra information about a section.
alignment: u64
§entry_size: u64
If this section contains a table, this is the size of one entry
Implementations§
source§impl SectionHeader
impl SectionHeader
pub fn section_type(&self) -> SectionType
pub fn name<'a>(&self, elf: &'a Elf<'_>) -> Option<&'a str>
sourcepub fn data<'a>(&self, elf: &'a Elf<'_>) -> Option<&'a [u8]>
pub fn data<'a>(&self, elf: &'a Elf<'_>) -> Option<&'a [u8]>
Get this section’s data, as a byte slice. Returns None
if the image isn’t represented in
the file (for example, NoBits
sections don’t have any data).
sourcepub fn is_writable(&self) -> bool
pub fn is_writable(&self) -> bool
Whether this section contains writable data
sourcepub fn is_allocated(&self) -> bool
pub fn is_allocated(&self) -> bool
Whether this section should be allocated into the memory image of the program
sourcepub fn is_executable(&self) -> bool
pub fn is_executable(&self) -> bool
Whether this section contains executable instructions