Home | History | Annotate | Download | only in ltrace

Lines Matching refs:libsym

739 	struct library_symbol *libsym = malloc(sizeof(*libsym));
740 if (libsym == NULL)
748 if (library_symbol_init(libsym, taddr, name, 1, LS_TOPLT_EXEC) < 0) {
749 free(libsym);
753 libsym->next = *ret;
754 *ret = libsym;
784 mark_chain_latent(struct library_symbol *libsym)
786 for (; libsym != NULL; libsym = libsym->next) {
787 debug(DEBUG_FUNCTION, "marking %s latent", libsym->name);
788 libsym->latent = 1;
839 struct library_symbol *libsym = NULL;
840 if (elf_add_plt_entry(proc, lte, name, rela, i, &libsym) < 0)
849 filter_symbol_chain(options.plt_filter, &libsym, lib);
851 if (libsym != NULL) {
855 mark_chain_latent(libsym);
856 library_add_symbol(lib, libsym);
863 delete_symbol_chain(struct library_symbol *libsym)
865 while (libsym != NULL) {
866 struct library_symbol *tmp = libsym->next;
867 library_symbol_destroy(libsym);
868 free(libsym);
869 libsym = tmp;
878 * each address, and replace name in libsym with a shorter variant if
882 struct library_symbol *libsym;
1006 struct library_symbol *libsym = NULL;
1009 naddr, full_name, &libsym);
1012 naddr, full_name, &libsym);
1028 delete_symbol_chain(libsym);
1029 libsym = NULL;
1039 tmp->next = libsym;
1040 libsym = tmp;
1050 for (tmp = libsym; tmp != NULL; ) {
1061 if (unique->libsym == NULL) {
1062 unique->libsym = tmp;
1065 unique->libsym->next = NULL;
1068 < strlen(unique->libsym->name)) {
1070 (unique->libsym, tmp->name, 1);
1084 struct library_symbol *this_sym = symbols[i].libsym;
1092 symbols[i].libsym = NULL;
1097 if (symbols[i].libsym != NULL)
1098 library_add_symbol(lib, symbols[i].libsym);