about summary refs log tree commit diff
path: root/elf/dl-load.c
diff options
context:
space:
mode:
authorUlrich Drepper <drepper@redhat.com>2003-10-27 01:36:12 +0000
committerUlrich Drepper <drepper@redhat.com>2003-10-27 01:36:12 +0000
commit5a4b5076f1e002ebb43ccbab7d84dfa76d96146e (patch)
tree1984a0b90076335862befa306ff274627c8af1b4 /elf/dl-load.c
parent98d2ca3d87a854f163d6989dc8b22aee63588c09 (diff)
downloadglibc-5a4b5076f1e002ebb43ccbab7d84dfa76d96146e.tar.gz
glibc-5a4b5076f1e002ebb43ccbab7d84dfa76d96146e.tar.xz
glibc-5a4b5076f1e002ebb43ccbab7d84dfa76d96146e.zip
Update.
	* include/dlfcn.h (__RTLD_OPENEXEC): Define.
	* elf/dl-load.c (_dl_map_object_from_fd): Don't allow loading
	executables unless __RTLD_OPENEXEC flag is present.
	* elf/rtld.c (dl_main): Pass __RTLD_OPENEXEC flag to
	_dl_map_object when loading the executable.

	reverse lookup format for IPv6 addresses is using bitstring and
	* resolv/ns_name.c: Implement encoding and decoding bitstring in
Diffstat (limited to 'elf/dl-load.c')
-rw-r--r--elf/dl-load.c2
1 files changed, 1 insertions, 1 deletions
diff --git a/elf/dl-load.c b/elf/dl-load.c
index 0b6e96f998..ecf2ee87eb 100644
--- a/elf/dl-load.c
+++ b/elf/dl-load.c
@@ -1129,7 +1129,7 @@ cannot allocate TLS data structures for initial thread");
       {
 	/* This object is loaded at a fixed address.  This must never
            happen for objects loaded with dlopen().  */
-	if (__builtin_expect (mode & __RTLD_DLOPEN, 0))
+	if (__builtin_expect ((mode & __RTLD_OPENEXEC) == 0, 0))
 	  {
 	    errstring = N_("cannot dynamically load executable");
 	    goto call_lose;