#[repr(C)]pub struct Header<Addr: Copy> {Show 14 fields
pub ident: HeaderIdent,
pub file_type: FileType,
pub machine: Machine,
pub version: u32,
pub entry_point: Addr,
pub program_header_offset: Addr,
pub section_header_offset: Addr,
pub flags: u32,
pub header_size: u16,
pub program_header_size: u16,
pub program_header_count: u16,
pub section_header_size: u16,
pub section_header_count: u16,
pub section_names_index: u16,
}
Expand description
File header for an ELF file with a specific address size.
Fields§
§ident: HeaderIdent
Header common to all ELF variants.
file_type: FileType
Distinguishes executables, libraries, etc.
machine: Machine
CPU architecture
version: u32
ELF format version
entry_point: Addr
Virtual address of executable entry point. Zero if not present.
program_header_offset: Addr
File offset to the array of program section headers which control executable loading. Zero if not present.
section_header_offset: Addr
File offset to the array of section header which control linking. Zero if not present.
flags: u32
CPU architecture-specific flags.
header_size: u16
Size in bytes of this header. May be longer than the structure in code.
program_header_size: u16
Size in bytes of of each program segment header. May be longer than the structure in code.
program_header_count: u16
Number of program segment headers.
section_header_size: u16
Size in bytes of each section header. May be longer than the structure in code.
section_header_count: u16
Number of section headers.
section_names_index: u16
Index of the section header which contains the list of section names.