#include <ubixos/elf.h> const struct { char *elfTypeName; uInt32 id; } elfType[] = { { "ET_NONE", 0 }, { "ET_REL", 1 }, { "ET_EXEC", 2 }, { "ET_DYN", 3 }, { "ET_CORE", 4 }, { "ET_LOPROC", 0xff00 }, { "ET_HIPROC", 0xffff }, }; const struct { char *phTypeName; uInt32 id; } elfPhType[] = { { "PT_NULL", 0 }, { "PT_LOAD", 1 }, { "PT_DYNAMIC", 2 }, { "PT_INTERP", 3 }, { "PT_NOTE", 4 }, { "PT_SHLIB", 5 }, { "PT_PHDR", 6 }, { "PT_LOPROC", 0x70000000 }, { "PT_HIPROC", 0x7fffffff }, }; const struct { char *shTypeName; uInt32 id; } elfShType[] = { {"SHT_NULL", 0 }, {"SHT_PROGBITS", 1 }, {"SHT_SYMTAB", 2 }, {"SHT_STRTAB", 3 }, {"SHT_RELA", 4 }, {"SHT_HASH", 5 }, {"SHT_DYNAMIC", 6 }, {"SHT_NOTE", 7 }, {"SHT_NOBITS", 8 }, {"SHT_REL", 9 }, {"SHT_SHLIB", 10 }, {"SHT_DYNSYM", 11 }, }; char *elfGetShType(int shType) { return((char *)elfShType[shType].shTypeName); } char *elfGetPhType(int phType) { return((char *)elfPhType[phType].phTypeName); }