Go to the documentation of this file. 1 #ifndef _UAPI_LINUX_ELF_H
2 #define _UAPI_LINUX_ELF_H
4 #include <linux/types.h>
33 #define PT_LOOS 0x60000000
34 #define PT_HIOS 0x6fffffff
35 #define PT_LOPROC 0x70000000
36 #define PT_HIPROC 0x7fffffff
37 #define PT_GNU_EH_FRAME 0x6474e550
39 #define PT_GNU_STACK (PT_LOOS + 0x474e551)
61 #define PN_XNUM 0xffff
69 #define ET_LOPROC 0xff00
70 #define ET_HIPROC 0xffff
89 #define DT_SYMBOLIC 16
97 #define DT_ENCODING 32
98 #define OLD_DT_LOOS 0x60000000
99 #define DT_LOOS 0x6000000d
100 #define DT_HIOS 0x6ffff000
101 #define DT_VALRNGLO 0x6ffffd00
102 #define DT_VALRNGHI 0x6ffffdff
103 #define DT_ADDRRNGLO 0x6ffffe00
104 #define DT_ADDRRNGHI 0x6ffffeff
105 #define DT_VERSYM 0x6ffffff0
106 #define DT_RELACOUNT 0x6ffffff9
107 #define DT_RELCOUNT 0x6ffffffa
108 #define DT_FLAGS_1 0x6ffffffb
109 #define DT_VERDEF 0x6ffffffc
110 #define DT_VERDEFNUM 0x6ffffffd
111 #define DT_VERNEED 0x6ffffffe
112 #define DT_VERNEEDNUM 0x6fffffff
113 #define OLD_DT_HIOS 0x6fffffff
114 #define DT_LOPROC 0x70000000
115 #define DT_HIPROC 0x7fffffff
125 #define STT_SECTION 3
130 #define ELF_ST_BIND(x) ((x) >> 4)
131 #define ELF_ST_TYPE(x) (((unsigned int) x) & 0xf)
132 #define ELF32_ST_BIND(x) ELF_ST_BIND(x)
133 #define ELF32_ST_TYPE(x) ELF_ST_TYPE(x)
134 #define ELF64_ST_BIND(x) ELF_ST_BIND(x)
135 #define ELF64_ST_TYPE(x) ELF_ST_TYPE(x)
154 #define ELF32_R_SYM(x) ((x) >> 8)
155 #define ELF32_R_TYPE(x) ((x) & 0xff)
157 #define ELF64_R_SYM(i) ((i) >> 32)
158 #define ELF64_R_TYPE(i) ((i) & 0xffffffff)
267 #define SHT_PROGBITS 1
272 #define SHT_DYNAMIC 6
277 #define SHT_DYNSYM 11
279 #define SHT_LOPROC 0x70000000
280 #define SHT_HIPROC 0x7fffffff
281 #define SHT_LOUSER 0x80000000
282 #define SHT_HIUSER 0xffffffff
285 #define SHF_WRITE 0x1
286 #define SHF_ALLOC 0x2
287 #define SHF_EXECINSTR 0x4
288 #define SHF_MASKPROC 0xf0000000
292 #define SHN_LORESERVE 0xff00
293 #define SHN_LOPROC 0xff00
294 #define SHN_HIPROC 0xff1f
295 #define SHN_ABS 0xfff1
296 #define SHN_COMMON 0xfff2
297 #define SHN_HIRESERVE 0xffff
339 #define ELFMAG "\177ELF"
342 #define ELFCLASSNONE 0
345 #define ELFCLASSNUM 3
347 #define ELFDATANONE 0
348 #define ELFDATA2LSB 1
349 #define ELFDATA2MSB 2
355 #define ELFOSABI_NONE 0
356 #define ELFOSABI_LINUX 3
359 #define ELF_OSABI ELFOSABI_NONE
367 #define NT_PRSTATUS 1
369 #define NT_PRPSINFO 3
370 #define NT_TASKSTRUCT 4
376 #define NT_SIGINFO 0x53494749
377 #define NT_FILE 0x46494c45
378 #define NT_PRXFPREG 0x46e62b7f
379 #define NT_PPC_VMX 0x100
380 #define NT_PPC_SPE 0x101
381 #define NT_PPC_VSX 0x102
382 #define NT_386_TLS 0x200
383 #define NT_386_IOPERM 0x201
384 #define NT_X86_XSTATE 0x202
385 #define NT_S390_HIGH_GPRS 0x300
386 #define NT_S390_TIMER 0x301
387 #define NT_S390_TODCMP 0x302
388 #define NT_S390_TODPREG 0x303
389 #define NT_S390_CTRS 0x304
390 #define NT_S390_PREFIX 0x305
391 #define NT_S390_LAST_BREAK 0x306
392 #define NT_S390_SYSTEM_CALL 0x307
393 #define NT_S390_TDB 0x308
394 #define NT_ARM_VFP 0x400
395 #define NT_ARM_TLS 0x401
396 #define NT_ARM_HW_BREAK 0x402
397 #define NT_ARM_HW_WATCH 0x403