github.com/jlmucb/cloudproxy@v0.0.0-20170830161738-b5aa0b619bc4/cpvmm/vmm/bootstrap/elf64.h (about) 1 #ifndef ELF64_H_ 2 #define ELF64_H_ 3 struct elf64_hdr { 4 unsigned char e_ident[16]; 5 uint16_t e_type; 6 uint16_t e_machine; 7 uint32_t e_version; 8 uint64_t e_entry; 9 uint64_t e_phoff; 10 uint64_t e_shoff; 11 uint32_t e_flags; 12 uint16_t e_ehsize; 13 uint16_t e_phentsize; 14 uint16_t e_phnum; 15 uint16_t e_shentsize; 16 uint16_t e_shnum; 17 uint16_t e_shstrndx; 18 }; 19 20 typedef struct elf64_hdr elf64_hdr; 21 22 23 #define ELF64_PT_LOAD 1 24 25 struct elf64_phdr { 26 uint32_t p_type; 27 uint32_t p_flags; 28 uint64_t p_offset; 29 uint64_t p_vaddr; 30 uint64_t p_paddr; 31 uint64_t p_filesz; 32 uint64_t p_memsz; 33 uint64_t p_align; 34 35 }; 36 typedef struct elf64_phdr elf64_phdr; 37 38 #endif