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