about summary refs log tree commit diff
path: root/elf/dynamic-link.h
diff options
context:
space:
mode:
authorUlrich Drepper <drepper@redhat.com>2004-03-06 09:51:56 +0000
committerUlrich Drepper <drepper@redhat.com>2004-03-06 09:51:56 +0000
commit4df8c11d26a29bc3a6116a9125cdfdca3cd517bb (patch)
tree610d76b0b4ab15d392f7b8077fd597e54154ef0c /elf/dynamic-link.h
parent42af49f875e2d0a8cdcf575fbd3a06c12be6468e (diff)
downloadglibc-4df8c11d26a29bc3a6116a9125cdfdca3cd517bb.tar.gz
glibc-4df8c11d26a29bc3a6116a9125cdfdca3cd517bb.tar.xz
glibc-4df8c11d26a29bc3a6116a9125cdfdca3cd517bb.zip
Update.
	* configure.in: Recognize --enable-bind-now.
	* elf/dynamic-link.h (elf_get_dynamic_info): Allow bind-now flags
	in ld.so.
	* Makerules (LDFLAGS-c.so): Add -z now if so configured.
	* elf/Makefile ($(objpfx)ld.so): Likewise.
	* config.make.in (bind-now): New definition.
Diffstat (limited to 'elf/dynamic-link.h')
-rw-r--r--elf/dynamic-link.h8
1 files changed, 5 insertions, 3 deletions
diff --git a/elf/dynamic-link.h b/elf/dynamic-link.h
index 199e1bac5c..5d48b16511 100644
--- a/elf/dynamic-link.h
+++ b/elf/dynamic-link.h
@@ -159,10 +159,12 @@ elf_get_dynamic_info (struct link_map *l, ElfW(Dyn) *temp)
     assert (info[DT_RELENT]->d_un.d_val == sizeof (ElfW(Rel)));
 #endif
 #ifdef RTLD_BOOTSTRAP
+  /* Only the bind now flags are allowed.  */
+  assert (info[VERSYMIDX (DT_FLAGS_1)] == NULL
+	  || info[VERSYMIDX (DT_FLAGS_1)]->d_un.d_val == DF_1_NOW);
+  assert (info[DT_FLAGS] == NULL
+	  || info[DT_FLAGS]->d_un.d_val == DF_BIND_NOW);
   /* Flags must not be set for ld.so.  */
-  assert (info[DT_FLAGS] == NULL);
-  assert (info[VERSYMIDX (DT_FLAGS_1)] == NULL);
-  /* The dynamic linker should have none of these set.  */
   assert (info[DT_RUNPATH] == NULL);
   assert (info[DT_RPATH] == NULL);
 #else