* renamed file to constants.py
[pyelftools.git] / elftools / elf / enums.py
1 # Mappings of enum names<->values to be inserted into construct's Enum adapter
2 #
3
4 # e_ident[EI_CLASS] in the ELF header
5 ENUM_EI_CLASS = dict(
6 ELFCLASSNONE=0,
7 ELFCLASS32=1,
8 ELFCLASS64=2
9 )
10
11 # e_ident[EI_DATA] in the ELF header
12 ENUM_EI_DATA = dict(
13 ELFDATANONE=0,
14 ELFDATA2LSB=1,
15 ELFDATA2MSB=2
16 )
17
18 # e_version in the ELF header
19 ENUM_E_VERSION = dict(
20 EV_NONE=0,
21 EV_CURRENT=1
22 )
23
24 # e_type in the ELF header
25 ENUM_E_TYPE = dict(
26 ET_NONE=0,
27 ET_REL=1,
28 ET_EXEC=2,
29 ET_DYN=3,
30 ET_CORE=4,
31 ET_LOPROC=0xff00,
32 ET_HIPROC=0xffff,
33 _default_='PROC_SPECIFIC',
34 )
35
36 # e_machine in the ELF header
37 # (this list is currently somewhat partial...)
38 ENUM_E_MACHINE = dict(
39 EM_NONE=0,
40 EM_M32=1,
41 EM_SPARC=2,
42 EM_386=3,
43 EM_68K=4,
44 EM_88K=5,
45 EM_860=7,
46 EM_MIPS=8,
47 EM_S370=9,
48 EM_MIPS_RS4_BE=10,
49 EM_IA_64=50,
50 EM_X86_64=62,
51 EM_AVR=83,
52 _default_='RESERVED',
53 )
54
55 # sh_type in the section header
56 ENUM_SH_TYPE = dict(
57 SHT_NULL=0,
58 SHT_PROGBITS=1,
59 SHT_SYMTAB=2,
60 SHT_STRTAB=3,
61 SHT_RELA=4,
62 SHT_HASH=5,
63 SHT_DYNAMIC=6,
64 SHT_NOTE=7,
65 SHT_NOBITS=8,
66 SHT_REL=9,
67 SHT_SHLIB=10,
68 SHT_DYNSYM=11,
69 SHT_INIT_ARRAY=14,
70 SHT_FINI_ARRAY=15,
71 SHT_PREINIT_ARRAY=16,
72 SHT_GROUP=17,
73 SHT_SYMTAB_SHNDX=18,
74 SHT_NUM=19,
75 SHT_LOOS=0x60000000,
76 SHT_HIOS=0x6fffffff,
77 SHT_LOPROC=0x70000000,
78 SHT_HIPROC=0x7fffffff,
79 SHT_LOUSER=0x80000000,
80 SHT_HIUSER=0xffffffff,
81 SHT_AMD64_UNWIND=0x70000001,
82 _default_='RESERVED',
83 )
84
85 # p_type in the program header
86 ENUM_P_TYPE = dict(
87 PT_NULL=0,
88 PT_LOAD=1,
89 PT_DYNAMIC=2,
90 PT_INTERP=3,
91 PT_NOTE=4,
92 PT_SHLIB=5,
93 PT_PHDR=6,
94 PT_LOPROC=0x70000000,
95 PT_HIPROC=0x7fffffff,
96 )
97