aboutsummaryrefslogtreecommitdiff
path: root/elf/dl-load.c
diff options
context:
space:
mode:
authorRoland McGrath <roland@gnu.org>1995-06-12 09:00:13 +0000
committerRoland McGrath <roland@gnu.org>1995-06-12 09:00:13 +0000
commitf2b0f935d7c8de544408181350c13d8a4db690ca (patch)
tree658304e442dad6ff4c31f1d1d6a3293b7509f20d /elf/dl-load.c
parent5bf62f2d3a8af353fac661b224fc1604d4de51ea (diff)
downloadglibc-f2b0f935d7c8de544408181350c13d8a4db690ca.tar
glibc-f2b0f935d7c8de544408181350c13d8a4db690ca.tar.gz
glibc-f2b0f935d7c8de544408181350c13d8a4db690ca.tar.bz2
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/dl-load.c')
-rw-r--r--elf/dl-load.c4
1 files changed, 2 insertions, 2 deletions
diff --git a/elf/dl-load.c b/elf/dl-load.c
index c48286f938..6cacd3e3b6 100644
--- a/elf/dl-load.c
+++ b/elf/dl-load.c
@@ -354,8 +354,8 @@ _dl_map_object (struct link_map *loader, const char *name,
if (zeroend > zeropage)
/* Map the remaining zero pages in from the zero fill FD. */
- mapat = mmap (zeropage, zeroend - zeropage,
- prot, MAP_ANON|MAP_PRIVATE|MAP_FIXED,
+ mapat = mmap (zeropage, zeroend - zeropage, prot,
+ MAP_ANON|MAP_PRIVATE|MAP_FIXED|MAP_INHERIT,
_dl_zerofd, 0);
}
}