diff options
author | Eric Andersen <andersen@codepoet.org> | 2004-05-11 07:21:47 +0000 |
---|---|---|
committer | Eric Andersen <andersen@codepoet.org> | 2004-05-11 07:21:47 +0000 |
commit | e2f4c03385fbb6a35b9314a056f4c8940569b17b (patch) | |
tree | 2fb1e90a83d078979081c22eefabc8c6139b0064 /ldso | |
parent | f970ce6348dd779ce14d217ba6d9c275e6b6cbb7 (diff) |
Bradley D. LaRonde, brad at laronde dot org writes:
If I change that ELF_RTYPE_CLASS_COPY to ELF_RTYPE_CLASS_PLT to tell
_dl_find_hash to ignore stubs when resolving undefined functions without
stubs, the dlopen tests all pass. dlopen gets a pointer to the libc.so
malloc instead of a pointer to the libpthread malloc stub. Yay! :-)
Diffstat (limited to 'ldso')
-rw-r--r-- | ldso/ldso/mips/elfinterp.c | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/ldso/ldso/mips/elfinterp.c b/ldso/ldso/mips/elfinterp.c index 5be0421e4..3cdf9d8af 100644 --- a/ldso/ldso/mips/elfinterp.c +++ b/ldso/ldso/mips/elfinterp.c @@ -285,7 +285,7 @@ void _dl_perform_mips_global_got_relocations(struct elf_resolve *tpnt) *got_entry = sym->st_value + (unsigned long) tpnt->loadaddr; else { *got_entry = (unsigned long) _dl_find_hash(strtab + - sym->st_name, tpnt->symbol_scope, ELF_RTYPE_CLASS_COPY); + sym->st_name, tpnt->symbol_scope, ELF_RTYPE_CLASS_PLT); } } else if (sym->st_shndx == SHN_COMMON) { |