Home | History | Annotate | Download | only in tests

Lines Matching defs:ehdr

36 template <typename Ehdr>
37 void TestInitEhdr(Ehdr* ehdr, uint32_t elf_class, uint32_t machine_type) {
38 memset(ehdr, 0, sizeof(Ehdr));
39 memcpy(&ehdr->e_ident[0], ELFMAG, SELFMAG);
40 ehdr->e_ident[EI_DATA] = ELFDATA2LSB;
41 ehdr->e_ident[EI_VERSION] = EV_CURRENT;
42 ehdr->e_ident[EI_OSABI] = ELFOSABI_SYSV;
43 ehdr->e_ident[EI_CLASS] = elf_class;
44 ehdr->e_type = ET_DYN;
45 ehdr->e_machine = machine_type;
46 ehdr->e_version = EV_CURRENT;
47 ehdr->e_ehsize = sizeof(Ehdr);
59 template <typename Ehdr, typename Shdr>
62 Ehdr ehdr;
64 TestInitEhdr(&ehdr, elf_class, machine);
66 uint64_t offset = sizeof(Ehdr);
67 ehdr.e_shoff = offset;
68 ehdr.e_shnum = 3;
69 ehdr.e_shentsize = sizeof(Shdr);
70 ehdr.e_shstrndx = 2;
71 copy_func(0, &ehdr, sizeof(ehdr));
77 offset += ehdr.e_shentsize;
81 offset += ehdr.e_shentsize;
83 uint64_t symtab_offset = sizeof(ehdr) + ehdr.e_shnum * ehdr.e_shentsize;