From: Ryan S. Arnold Date: Fri, 6 Jul 2012 18:03:09 +0000 (-0500) Subject: Remove assert() if DT_RUNPATH and DT_RPATH flags are found in ld.so. X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=d846920271a0f4dc54c0dbbd56998228e75e776c;p=thirdparty%2Fglibc.git Remove assert() if DT_RUNPATH and DT_RPATH flags are found in ld.so. --- diff --git a/ChangeLog b/ChangeLog index 756b406cb9a..69a2d7ef63b 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,3 +1,10 @@ +2012-07-06 Ryan S. Arnold + + * 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 * po/bg.po: Update from translation team. diff --git a/elf/dynamic-link.h b/elf/dynamic-link.h index 44f53b3c709..0c68fd43b69 100644 --- a/elf/dynamic-link.h +++ b/elf/dynamic-link.h @@ -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) {