Created
February 6, 2021 14:09
-
-
Save john-tornblom/8bca0ddc48901a4357de263e486cc03e to your computer and use it in GitHub Desktop.
WIP struct for PS4 dynlib_obj struct
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
struct dynlib_dynsec { | |
struct { | |
struct dynlib_dynsec *le_next; | |
struct dynlib_dynsec *le_prev; | |
} list_entry; | |
unsigned long handle; //struct sysentvec* ? | |
unsigned int refcount; | |
long size; | |
void *symtab; | |
unsigned long symtabsize; | |
const char *strtab; | |
unsigned long strsize; | |
void *pltrela; | |
unsigned long pltrelasize; | |
void *rela; | |
unsigned long relasize; | |
void *hash; | |
unsigned long hashsize; | |
void *dynamic; | |
unsigned long dynamicsize; | |
void *sce_comment; | |
unsigned long sce_commentsize; | |
void *sce_dynlib; | |
unsigned long sce_dynlibsize; | |
char* unknown1; // execpath? | |
unsigned long unknown1size; | |
void *buckets; | |
unsigned long bucketssize; | |
unsigned int nbuckets; | |
void *chains; | |
unsigned long chainssize; | |
unsigned int nchains; | |
long unknown2[7]; | |
}; | |
struct dynlib_obj { | |
struct dynlib_obj *next; | |
char *path; | |
long unknown0[2]; | |
int refcount; | |
unsigned long handle; | |
unsigned long mapbase; | |
unsigned long mapsize; | |
unsigned long textsize; | |
void *database; | |
unsigned long datasize; | |
void *unknown1; | |
unsigned long unknown1_len; | |
unsigned long vaddrbase; | |
unsigned long relocbase; | |
unsigned long entry; | |
int tlsindex; | |
void *tlsinit; | |
unsigned long tlsinitsize; | |
unsigned long tlssize; | |
unsigned long tlsoffset; | |
unsigned long tlsalign; | |
unsigned long *pltgot; | |
long unknown2[7]; | |
unsigned long init; | |
unsigned long fini; | |
unsigned long eh_frame_hdr; | |
unsigned long eh_frame_hdr_size; | |
unsigned long eh_frame; | |
unsigned long eh_frame_size; | |
int status; | |
int flags; | |
long unknown5[5]; | |
struct dynlib_dynsec *dynsec; | |
long unknown6[6]; //fingerprint? | |
}; |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment