]>
Commit | Line | Data |
---|---|---|
2cab856f | 1 | #ifndef __ELF_H__ |
2 | #define __ELF_H__ | |
3 | ||
4 | #define EI_NIDENT 16 | |
5 | ||
6 | typedef struct { | |
7 | unsigned char e_ident[EI_NIDENT]; | |
8 | uint16_t e_type; | |
9 | uint16_t e_machine; | |
10 | uint32_t e_version; | |
11 | uint32_t e_entry; | |
12 | uint32_t e_phoff; | |
13 | uint32_t e_shoff; | |
14 | uint32_t e_flags; | |
15 | uint16_t e_ehsize; | |
16 | uint16_t e_phentsize; | |
17 | uint16_t e_phnum; | |
18 | uint16_t e_shentsize; | |
19 | uint16_t e_shnum; | |
20 | uint16_t e_shtrndx; | |
21 | } __attribute__((__packed__)) Elf32_Ehdr; | |
22 | ||
23 | #define PT_NULL 0 | |
24 | #define PT_LOAD 1 | |
25 | #define PT_DYNAMIC 2 | |
26 | #define PT_INTERP 3 | |
27 | #define PT_NOTE 4 | |
28 | #define PT_SHLIB 5 | |
29 | #define PT_PHDR 6 | |
30 | #endif | |
31 |