From f2b0f935d7c8de544408181350c13d8a4db690ca Mon Sep 17 00:00:00 2001 From: Roland McGrath Date: Mon, 12 Jun 1995 09:00:13 +0000 Subject: * elf/dl-load.c (_dl_map_object): Add MAP_INHERIT flag in mmap from zero fill. * elf/dl-lookup.c (_dl_lookup_symbol): Take new flag arg NOSELF; if nonzero, don't let *REF satisfy the reference itself. * elf/link.h (_dl_lookup_symbol): Add new arg NOSELF in decl. * sysdeps/i386/dl-runtime.c (_dl_runtime_resolve): Pass new arg to _dl_lookup_symbol. * elf/do-rel.h (elf_dynamic_do_rel): Pass new second arg of R->r_offset to RESOLVE callback. * elf/dl-reloc.c (_dl_relocate_object: resolve): Don't let *REF satisfy the reference itself if its value equals the reloc's offset. * elf/rtld.c (dl_main): Write a newline in fatal msg. * Makerules (lib%.so: lib%_pic.a): Pass $(LDFLAGS.so). --- elf/dl-reloc.c | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) (limited to 'elf/dl-reloc.c') diff --git a/elf/dl-reloc.c b/elf/dl-reloc.c index 7cbed389b8..7e4f4992a7 100644 --- a/elf/dl-reloc.c +++ b/elf/dl-reloc.c @@ -60,10 +60,10 @@ _dl_relocate_object (struct link_map *l, int lazy) = ((void *) l->l_addr + l->l_info[DT_STRTAB]->d_un.d_ptr); - Elf32_Addr resolve (const Elf32_Sym **ref) + Elf32_Addr resolve (const Elf32_Sym **ref, Elf32_Addr r_offset) { return _dl_lookup_symbol (strtab + (*ref)->st_name, ref, scope, - l->l_name); + l->l_name, (*ref)->st_value == r_offset); } real_next = l->l_next; -- cgit v1.2.3