about summary refs log tree commit diff stats
path: root/src/include/elfload_dump.h
diff options
context:
space:
mode:
authorptitSeb <sebastien.chev@gmail.com>2021-03-01 15:52:05 +0100
committerptitSeb <sebastien.chev@gmail.com>2021-03-01 15:52:05 +0100
commit311842a43aa34276dc41da6e2f3a63ac80d4849c (patch)
tree4da4eeeb2c3c4de462389e06b6e1ed504dfea6e9 /src/include/elfload_dump.h
parent4ea8ebb3367810a1a789acdfedb2d346491f603a (diff)
downloadbox64-311842a43aa34276dc41da6e2f3a63ac80d4849c.tar.gz
box64-311842a43aa34276dc41da6e2f3a63ac80d4849c.zip
Read elf header of launched executable
Diffstat (limited to 'src/include/elfload_dump.h')
-rwxr-xr-xsrc/include/elfload_dump.h24
1 files changed, 24 insertions, 0 deletions
diff --git a/src/include/elfload_dump.h b/src/include/elfload_dump.h
new file mode 100755
index 00000000..251ea3b8
--- /dev/null
+++ b/src/include/elfload_dump.h
@@ -0,0 +1,24 @@
+#ifndef ELFLOADER_DUMP_H
+#define ELFLOADER_DUMP_H
+
+typedef struct elfheader_s elfheader_t;
+
+const char* DumpSection(Elf64_Shdr *s, char* SST);
+const char* DumpDynamic(Elf64_Dyn *s);
+const char* DumpPHEntry(Elf64_Phdr *e);
+const char* DumpSym(elfheader_t *h, Elf64_Sym* sym);
+const char* DumpRelType(int t);
+const char* SymName(elfheader_t *h, Elf64_Sym* sym);
+const char* IdxSymName(elfheader_t *h, int sym);
+void DumpMainHeader(Elf64_Ehdr *header, elfheader_t *h);
+void DumpSymTab(elfheader_t *h);
+void DumpDynamicSections(elfheader_t *h);
+void DumpDynamicNeeded(elfheader_t *h);
+void DumpDynamicRPath(elfheader_t *h);
+void DumpDynSym(elfheader_t *h);
+void DumpRelTable(elfheader_t *h, int cnt, Elf64_Rel *rel, const char* name);
+void DumpRelATable(elfheader_t *h, int cnt, Elf64_Rela *rela, const char* name);
+
+void DumpBinary(char* p, int sz);
+
+#endif //ELFLOADER_DUMP_H
\ No newline at end of file