Clean up ELF-related files and functions
[centaur.git] / include / libelfu / model.h
index 05f31ca6761aab1227af9891e027f63171b13da7..588d57a0159d05c0dda9521f3178dba7babb690b 100644 (file)
@@ -37,14 +37,22 @@ typedef struct {
   CIRCLEQ_HEAD(ScnList, ElfuScn) scnList;
   CIRCLEQ_HEAD(PhdrList, ElfuPhdr) phdrList;
 
-  ElfuPhdr *entryBase;
-  GElf_Addr *entryOffs;
+  ElfuScn *shstrtab;
 } ElfuElf;
 
 
 
+size_t elfu_countSections(ElfuElf *me);
+size_t elfu_countPHDRs(ElfuElf *me);
+
+char* elfu_modelScnName(ElfuElf *me, ElfuScn *ms);
+
+int elfu_modelCheck(ElfuElf *me);
+
 ElfuPhdr* elfu_modelFromPhdr(GElf_Phdr *phdr);
 ElfuScn* elfu_modelFromSection(Elf_Scn *scn);
 ElfuElf* elfu_modelFromElf(Elf *e);
 
+void elfu_modelToElf(ElfuElf *me, Elf *e);
+
 #endif