1.9 KiB
1.9 KiB
section.h
Definitions needed to parse the elf section headers.
elf_section_type_E
- enum
- Null - These sections can be ignored
- Program Data - These link to segments, if I remember right
- Symbol Table - Here are all the executables' symbols stored
- String Table - Here are all strings stored
- RelocationA - Contains relocation information
- Hash - Symbol Table hash table
- Dynamic Link - This provides information for the dynamic linker
- Note - notes that were created by the compiler / toolchain
- Nobits - Nulled data like
.bss
elf_section_T
- struct
Name | Type | Description |
---|---|---|
name_offset | uint32_t | The offset of the sections name in .shstrtab |
type | uint32_t | The type of the section -> elf_section_type_E |
flags | uint64_t | Sections attribute flags |
virtual_address | uint64_t | The address where the section should be mapped to (if it's not 0) |
offset | uint64_t | The sections offset in the file |
length | uint64_t | The size of the section |
link | uint32_t | Type specific link to another section |
info | uint32_t | Type specific information |
alignment | uint64_t | If the section is aligned, this value specifies the alignment |
entry_size | uint64_t | The size of the sections entries |
g_elf_section_type_strings
- global variable
An array of strings matching elf_section_type_E.