Struct elf::section::SectionHeader
source · pub struct SectionHeader {
pub sh_name: u32,
pub sh_type: u32,
pub sh_flags: u64,
pub sh_addr: u64,
pub sh_offset: u64,
pub sh_size: u64,
pub sh_link: u32,
pub sh_info: u32,
pub sh_addralign: u64,
pub sh_entsize: u64,
}
Expand description
Encapsulates the contents of an ELF Section Header
This is a Rust-native type that represents a Section Header that is bit-width-agnostic.
Fields§
§sh_name: u32
Section Name
sh_type: u32
Section Type
sh_flags: u64
Section Flags
sh_addr: u64
in-memory address where this section is loaded
sh_offset: u64
Byte-offset into the file where this section starts
sh_size: u64
Section size in bytes
sh_link: u32
Defined by section type
sh_info: u32
Defined by section type
sh_addralign: u64
address alignment
sh_entsize: u64
size of an entry if section data is an array of entries
Trait Implementations§
source§impl Clone for SectionHeader
impl Clone for SectionHeader
source§fn clone(&self) -> SectionHeader
fn clone(&self) -> SectionHeader
Returns a copy of the value. Read more
1.0.0 · source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
Performs copy-assignment from
source
. Read moresource§impl Debug for SectionHeader
impl Debug for SectionHeader
source§impl ParseAt for SectionHeader
impl ParseAt for SectionHeader
source§fn parse_at<E: EndianParse>(
endian: E,
class: Class,
offset: &mut usize,
data: &[u8]
) -> Result<Self, ParseError>
fn parse_at<E: EndianParse>( endian: E, class: Class, offset: &mut usize, data: &[u8] ) -> Result<Self, ParseError>
Parse this type by using the given endian-awareness and ELF class layout.
This is generic on EndianParse in order to allow users to optimize for
their expectations of data layout. See EndianParse for more details.
source§fn size_for(class: Class) -> usize
fn size_for(class: Class) -> usize
Returns the expected size of the type being parsed for the given ELF class
source§fn validate_entsize(class: Class, entsize: usize) -> Result<usize, ParseError>
fn validate_entsize(class: Class, entsize: usize) -> Result<usize, ParseError>
Checks whether the given entsize matches what we need to parse this type Read more
source§impl PartialEq for SectionHeader
impl PartialEq for SectionHeader
source§fn eq(&self, other: &SectionHeader) -> bool
fn eq(&self, other: &SectionHeader) -> bool
This method tests for
self
and other
values to be equal, and is used
by ==
.impl Copy for SectionHeader
impl Eq for SectionHeader
impl StructuralEq for SectionHeader
impl StructuralPartialEq for SectionHeader
Auto Trait Implementations§
impl RefUnwindSafe for SectionHeader
impl Send for SectionHeader
impl Sync for SectionHeader
impl Unpin for SectionHeader
impl UnwindSafe for SectionHeader
Blanket Implementations§
source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more