ROSE 0.11.145.147
Public Attributes | List of all members
SgAsmElfFileHeader::Elf32FileHeader_disk Struct Reference

Description

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 21545 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.
 

Member Data Documentation

◆ e_ident_magic

unsigned char SgAsmElfFileHeader::Elf32FileHeader_disk::e_ident_magic[4]

0x7f, 'E', 'L', 'F'

Definition at line 21546 of file binaryInstruction.C.

◆ e_ident_file_class

unsigned char SgAsmElfFileHeader::Elf32FileHeader_disk::e_ident_file_class

1=>32-bit; 2=>64-bit; other is error

Definition at line 21547 of file binaryInstruction.C.

◆ e_ident_data_encoding

unsigned char SgAsmElfFileHeader::Elf32FileHeader_disk::e_ident_data_encoding

1=>LSB; 2=>MSB; other is error

Definition at line 21548 of file binaryInstruction.C.

◆ e_ident_file_version

unsigned char SgAsmElfFileHeader::Elf32FileHeader_disk::e_ident_file_version

Format version number (same as e_version); must be 1.

Definition at line 21549 of file binaryInstruction.C.

◆ e_ident_padding

unsigned char SgAsmElfFileHeader::Elf32FileHeader_disk::e_ident_padding[9]

Padding to byte 16; must be zero.

Definition at line 21550 of file binaryInstruction.C.

◆ e_type

uint16_t SgAsmElfFileHeader::Elf32FileHeader_disk::e_type

Object file type: relocatable, executable, lib, core.

Definition at line 21551 of file binaryInstruction.C.

◆ e_machine

uint16_t SgAsmElfFileHeader::Elf32FileHeader_disk::e_machine

Required architecture for an individual file.

Definition at line 21552 of file binaryInstruction.C.

◆ e_version

uint32_t SgAsmElfFileHeader::Elf32FileHeader_disk::e_version

Object file version, currently zero or one.

Definition at line 21553 of file binaryInstruction.C.

◆ e_entry

uint32_t SgAsmElfFileHeader::Elf32FileHeader_disk::e_entry

Entry virtual address or zero if none.

Definition at line 21554 of file binaryInstruction.C.

◆ e_phoff

uint32_t SgAsmElfFileHeader::Elf32FileHeader_disk::e_phoff

File offset of program header table or zero if none.

Definition at line 21555 of file binaryInstruction.C.

◆ e_shoff

uint32_t SgAsmElfFileHeader::Elf32FileHeader_disk::e_shoff

File offset of section header table or zero if none.

Definition at line 21556 of file binaryInstruction.C.

◆ e_flags

uint32_t SgAsmElfFileHeader::Elf32FileHeader_disk::e_flags

Processor-specific flags (EF_* constants in docs)

Definition at line 21557 of file binaryInstruction.C.

◆ e_ehsize

uint16_t SgAsmElfFileHeader::Elf32FileHeader_disk::e_ehsize

Size of ELF header in bytes.

Definition at line 21558 of file binaryInstruction.C.

◆ e_phentsize

uint16_t SgAsmElfFileHeader::Elf32FileHeader_disk::e_phentsize

Size of each entry in the program header table.

Definition at line 21559 of file binaryInstruction.C.

◆ e_phnum

uint16_t SgAsmElfFileHeader::Elf32FileHeader_disk::e_phnum

Number of program headers, or PN_XNUM, or zero.

Definition at line 21560 of file binaryInstruction.C.

◆ e_shentsize

uint16_t SgAsmElfFileHeader::Elf32FileHeader_disk::e_shentsize

Size of each entry in the section header table.

Definition at line 21561 of file binaryInstruction.C.

◆ e_shnum

uint16_t SgAsmElfFileHeader::Elf32FileHeader_disk::e_shnum

Number of section headers, or zero for extended entries.

Definition at line 21562 of file binaryInstruction.C.

◆ e_shstrndx

uint16_t SgAsmElfFileHeader::Elf32FileHeader_disk::e_shstrndx

Index of name section, or SHN_UNDEF, or SHN_XINDEX.

Definition at line 21563 of file binaryInstruction.C.


The documentation for this struct was generated from the following file: