1999-05-03 Ulrich Drepper <drepper@cygnus.com>
+ * elf/dl-load.c (expand_dynamic_string_token): Don't expand
+ $ORIGIN for SUID binaries.
+
* sysdeps/unix/sysv/linux/arm/Dist: Add sigrestorer.S.
1999-05-02 Andreas Schwab <schwab@issan.cs.uni-dortmund.de>
{
size_t len = 1;
- if (((strncmp (&sf[1], "ORIGIN", 6) == 0 && (len = 7) != 0)
+ /* $ORIGIN is not expanded for SUID/GUID programs. */
+ if (((!__libc_enable_secure
+ && strncmp (&sf[1], "ORIGIN", 6) == 0 && (len = 7) != 0)
|| (strncmp (&sf[1], "PLATFORM", 8) == 0 && (len = 9) != 0))
&& (s[len] == '\0' || s[len] == '/' || s[len] == ':'))
++cnt;
const char *repl;
size_t len;
- if (((strncmp (&s[1], "ORIGIN", 6) == 0 && (len = 7) != 0)
+ if (((!__libc_enable_secure
+ && strncmp (&s[1], "ORIGIN", 6) == 0 && (len = 7) != 0)
|| (strncmp (&s[1], "PLATFORM", 8) == 0 && (len = 9) != 0))
&& (s[len] == '\0' || s[len] == '/' || s[len] == ':'))
{