diff options
author | Roland McGrath <roland@gnu.org> | 1995-06-12 09:00:13 +0000 |
---|---|---|
committer | Roland McGrath <roland@gnu.org> | 1995-06-12 09:00:13 +0000 |
commit | f2b0f935d7c8de544408181350c13d8a4db690ca (patch) | |
tree | 658304e442dad6ff4c31f1d1d6a3293b7509f20d /elf/link.h | |
parent | 5bf62f2d3a8af353fac661b224fc1604d4de51ea (diff) | |
download | glibc-f2b0f935d7c8de544408181350c13d8a4db690ca.tar.gz glibc-f2b0f935d7c8de544408181350c13d8a4db690ca.tar.xz glibc-f2b0f935d7c8de544408181350c13d8a4db690ca.zip |
* 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).
Diffstat (limited to 'elf/link.h')
-rw-r--r-- | elf/link.h | 7 |
1 files changed, 5 insertions, 2 deletions
diff --git a/elf/link.h b/elf/link.h index 66de6d97d7..6f44a0cfdb 100644 --- a/elf/link.h +++ b/elf/link.h @@ -173,11 +173,14 @@ extern void _dl_setup_hash (struct link_map *map); reference; it is replaced with the defining symbol, and the base load address of the defining object is returned. SYMBOL_SCOPE is the head of the chain used for searching. REFERENCE_NAME should name the object - containing the reference; it is used in error messages. */ + containing the reference; it is used in error messages. If NOSELF is + nonzero, them *SYM itself cannot define the value; another binding must + be found. */ extern Elf32_Addr _dl_lookup_symbol (const char *undef, const Elf32_Sym **sym, struct link_map *symbol_scope, - const char *reference_name); + const char *reference_name, + int noself); /* List of objects currently loaded. */ |