ROSE
0.11.123.0
|
File format of an ELF header.
Byte order of members depends on e_ident value. This code comes directly from "System V Application Binary Interface, Edition 4.1" and the FreeBSD elf(5) man page, and the "Executable and Linkable Format (ELF) Portable Formats Specifications, Version 1.2" and not from any header file.
Definition at line 5625 of file binaryInstruction.C.
Public Attributes | |
unsigned char | e_ident_magic [4] |
0x7f, 'E', 'L', 'F' | |
unsigned char | e_ident_file_class |
1=>32-bit; 2=>64-bit; other is error | |
unsigned char | e_ident_data_encoding |
1=>LSB; 2=>MSB; other is error | |
unsigned char | e_ident_file_version |
Format version number (same as e_version); must be 1. | |
unsigned char | e_ident_padding [9] |
Padding to byte 16; must be zero. | |
uint16_t | e_type |
Object file type: relocatable, executable, lib, core. | |
uint16_t | e_machine |
Required architecture for an individual file. | |
uint32_t | e_version |
Object file version, currently zero or one. | |
uint32_t | e_entry |
Entry virtual address or zero if none. | |
uint32_t | e_phoff |
File offset of program header table or zero if none. | |
uint32_t | e_shoff |
File offset of section header table or zero if none. | |
uint32_t | e_flags |
Processor-specific flags (EF_* constants in docs) | |
uint16_t | e_ehsize |
Size of ELF header in bytes. | |
uint16_t | e_phentsize |
Size of each entry in the program header table. | |
uint16_t | e_phnum |
Number of program headers, or PN_XNUM, or zero. | |
uint16_t | e_shentsize |
Size of each entry in the section header table. | |
uint16_t | e_shnum |
Number of section headers, or zero for extended entries. | |
uint16_t | e_shstrndx |
Index of name section, or SHN_UNDEF, or SHN_XINDEX. | |