
Go to the source code of this file.
Data Structures | |
| struct | symlist |
| struct | symtab |
| struct | mm |
Typedefs | |
| typedef Elf64_Addr | ELFXX_TYPE_Addr |
| typedef Elf64_Dyn | ELFXX_TYPE_Dyn |
| typedef Elf64_Rela | ELFXX_TYPE_Rel |
| typedef Elf64_Sym | ELFXX_TYPE_Sym |
| typedef Elf64_Shdr | ELFXX_TYPE_Shdr |
| typedef Elf64_Ehdr | ELFXX_TYPE_Ehdr |
| typedef struct symtab * | symtab_t |
Functions | |
| ssize_t | pread (int fd, void *buf, size_t count, off_t offset) |
| static struct symlist * | get_syms (int fd, ELFXX_TYPE_Shdr *symh, ELFXX_TYPE_Shdr *strh) |
| static int | do_load (int fd, symtab_t symtab) |
| static symtab_t | load_symtab (char *filename) |
| static int | lookup2 (struct symlist *sl, unsigned char type, char *name, unsigned long *val, unsigned int *size) |
| static int | lookup_sym (symtab_t s, unsigned char type, char *name, unsigned long *val, int *size) |
| static int | load_memmap () |
| static int | match_libc (const char *name) |
| static int | find_my_libc (char *name, int len, unsigned long *start) |
| static int | patch (unsigned long from, unsigned long to) |
| int | lookup_obj_sym (char *name, unsigned long *val, int *size) |
| int | init_symtab (char *exename) |
Variables | |
| static struct mm | mm [50] |
| static int | nmm |
| static symtab_t | symtab |
| static unsigned long | libc |
| typedef Elf32_Addr ELFXX_TYPE_Addr |
| typedef Elf32_Dyn ELFXX_TYPE_Dyn |
| typedef Elf32_Rel ELFXX_TYPE_Rel |
| typedef Elf32_Sym ELFXX_TYPE_Sym |
| typedef Elf32_Shdr ELFXX_TYPE_Shdr |
| typedef Elf32_Ehdr ELFXX_TYPE_Ehdr |
| ssize_t pread | ( | int | fd, | |
| void * | buf, | |||
| size_t | count, | |||
| off_t | offset | |||
| ) |
Referenced by ADIOI_XFS_Aligned_Mem_File_Read(), ADIOI_XFS_ReadContig(), do_load(), and get_syms().
| static struct symlist* get_syms | ( | int | fd, | |
| ELFXX_TYPE_Shdr * | symh, | |||
| ELFXX_TYPE_Shdr * | strh | |||
| ) | [static, read] |
Definition at line 100 of file loadsym.c.
References malloc(), symlist::num, pread(), symlist::str, and symlist::sym.
Referenced by do_load().
Definition at line 159 of file loadsym.c.
References symtab::dyn, free(), get_syms(), malloc(), p, pread(), size, and symtab::st.
Referenced by load_symtab().
| static symtab_t load_symtab | ( | char * | filename | ) | [static] |
| static int lookup2 | ( | struct symlist * | sl, | |
| unsigned char | type, | |||
| char * | name, | |||
| unsigned long * | val, | |||
| unsigned int * | size | |||
| ) | [static] |
Definition at line 311 of file loadsym.c.
References symlist::num, p, symlist::str, and symlist::sym.
Referenced by lookup_sym().
| static int lookup_sym | ( | symtab_t | s, | |
| unsigned char | type, | |||
| char * | name, | |||
| unsigned long * | val, | |||
| int * | size | |||
| ) | [static] |
Definition at line 332 of file loadsym.c.
References symtab::dyn, lookup2(), and symtab::st.
Referenced by lookup_obj_sym().
| static int load_memmap | ( | ) | [static] |
| static int match_libc | ( | const char * | name | ) | [static] |
Definition at line 437 of file loadsym.c.
References load_memmap(), match_libc(), mm::name, and mm::start.
Definition at line 495 of file loadsym.c.
References lookup_sym().
Referenced by CtgGlobalList::CtgGlobalList().
| int init_symtab | ( | char * | exename | ) |
1.5.5