about summary refs log tree commit diff
path: root/elf/dl-support.c
diff options
context:
space:
mode:
authorRoland McGrath <roland@gnu.org>2003-06-26 19:54:29 +0000
committerRoland McGrath <roland@gnu.org>2003-06-26 19:54:29 +0000
commitc801e76565467d2819ab0839804463f635d78b25 (patch)
tree6a28ae9f37029e767c292ed0763b5ee758e14fb7 /elf/dl-support.c
parent95a305bec37e831bc683cac8f62ca365bdb42d39 (diff)
downloadglibc-c801e76565467d2819ab0839804463f635d78b25.tar.gz
glibc-c801e76565467d2819ab0839804463f635d78b25.tar.xz
glibc-c801e76565467d2819ab0839804463f635d78b25.zip
2003-06-26 Roland McGrath <roland@redhat.com>
	* elf/elf.h (AT_SECURE): New macro.
	* sysdeps/generic/dl-sysdep.c (_dl_sysdep_start): Grok it,
	set __libc_enable_secure.
	(_dl_show_auxv): Add AT_SECURE to name table.
	* elf/dl-support.c (_dl_aux_init): Grok AT_SECURE, set
	__libc_enable_secure and __libc_enable_secure_decided.
	* sysdeps/unix/sysv/linux/ldsodefs.h
	[__ASSUME_AT_SECURE] (HAVE_AUX_SECURE): Define it.
	* sysdeps/unix/sysv/linux/kernel-features.h
	[__LINUX_KERNEL_VERSION >= 132425] (__ASSUME_AT_SECURE): Define it.
Diffstat (limited to 'elf/dl-support.c')
-rw-r--r--elf/dl-support.c5
1 files changed, 5 insertions, 0 deletions
diff --git a/elf/dl-support.c b/elf/dl-support.c
index 0d6ce6a12b..6d83da3328 100644
--- a/elf/dl-support.c
+++ b/elf/dl-support.c
@@ -188,6 +188,11 @@ _dl_aux_init (ElfW(auxv_t) *av)
 	gid ^= av->a_un.a_val;
 	seen |= 8;
 	break;
+      case AT_SECURE:
+	seen = -1;
+	__libc_enable_secure = av->a_un.a_val;
+	__libc_enable_secure_decided = 1;
+	break;
       }
   if (seen == 0xf)
     {