]> git.ipfire.org Git - thirdparty/glibc.git/commitdiff
Remove assert() if DT_RUNPATH and DT_RPATH flags are found in ld.so.
authorRyan S. Arnold <rsa@linux.vnet.ibm.com>
Fri, 6 Jul 2012 18:03:09 +0000 (13:03 -0500)
committerRyan S. Arnold <rsa@linux.vnet.ibm.com>
Fri, 6 Jul 2012 18:03:09 +0000 (13:03 -0500)
ChangeLog
elf/dynamic-link.h

index 756b406cb9a76812c50fa8f595cc5d2239bffffd..69a2d7ef63b9f0492be2db23e1d3ce371dd81601 100644 (file)
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,10 @@
+2012-07-06  Ryan S. Arnold  <rsa@linux.vnet.ibm.com>
+
+       * elf/dynamic-link.h (elf_get_dynamic_info): Remove assert()
+       around DT_RUNPATH and DT_RPATH which prevents running a dynamic
+       linker with an embedded RPATH flag, which is what a compiler
+       modified to embed a non-default INTERP section would do.
+
 2012-07-03  Andreas Jaeger  <aj@suse.de>
 
        * po/bg.po: Update from translation team.
index 44f53b3c709aa17ff13c125bdd5ee70872efaf28..0c68fd43b69ffbbac81ec38583db2b891f6c194b 100644 (file)
@@ -206,8 +206,8 @@ elf_get_dynamic_info (struct link_map *l, ElfW(Dyn) *temp)
   assert (info[DT_FLAGS] == NULL
          || (info[DT_FLAGS]->d_un.d_val & ~DF_BIND_NOW) == 0);
   /* Flags must not be set for ld.so.  */
-  assert (info[DT_RUNPATH] == NULL);
-  assert (info[DT_RPATH] == NULL);
+  info[DT_RUNPATH] = NULL;
+  info[DT_RPATH] = NULL;
 #else
   if (info[DT_FLAGS] != NULL)
     {