#include <sys/queue.h>
#include <elf.h>
-#include <gelf.h>
+#include <libelf/gelf.h>
typedef struct ElfuScn {
Elf_Data data;
+ struct ElfuScn *linkptr;
+ struct ElfuScn *infoptr;
+
+ CIRCLEQ_ENTRY(ElfuScn) elemChildScn;
CIRCLEQ_ENTRY(ElfuScn) elem;
} ElfuScn;
typedef struct ElfuPhdr {
GElf_Phdr phdr;
+ CIRCLEQ_HEAD(ChildScnList, ElfuScn) childScnList;
+ CIRCLEQ_HEAD(ChildPhdrList, ElfuPhdr) childPhdrList;
+
+ CIRCLEQ_ENTRY(ElfuPhdr) elemChildPhdr;
CIRCLEQ_ENTRY(ElfuPhdr) elem;
} ElfuPhdr;
CIRCLEQ_HEAD(ScnList, ElfuScn) scnList;
CIRCLEQ_HEAD(PhdrList, ElfuPhdr) phdrList;
+ CIRCLEQ_HEAD(OrphanScnList, ElfuScn) orphanScnList;
ElfuScn *shstrtab;
} ElfuElf;