* elf/dl-load.c (_dl_dst_count, _dl_dst_substitute): Handle $LIB
authorRoland McGrath <roland@gnu.org>
Mon, 14 Oct 2002 01:06:59 +0000 (01:06 +0000)
committerRoland McGrath <roland@gnu.org>
Mon, 14 Oct 2002 01:06:59 +0000 (01:06 +0000)
dynamic string tag.
* elf/Makefile ($(objpfx)trusted-dirs.st): Make the output define
DL_DST_LIB based on $(slibdir).

ChangeLog
elf/dl-load.c

index fb5b0ba..e65ca8b 100644 (file)
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,10 @@
+2002-09-26  Roland McGrath  <roland@redhat.com>
+
+       * elf/dl-load.c (_dl_dst_count, _dl_dst_substitute): Handle $LIB
+       dynamic string tag.
+       * elf/Makefile ($(objpfx)trusted-dirs.st): Make the output define
+       DL_DST_LIB based on $(slibdir).
+
 2002-10-13  Roland McGrath  <roland@frob.com>
 
        * elf/rtld-Rules ($(objpfx)rtld-libc.a): Use $(verbose) in ar command.
index e1909ca..db9391e 100644 (file)
@@ -202,8 +202,8 @@ _dl_dst_count (const char *name, int is_path)
       ++name;
       if ((len = is_dst (start, name, "ORIGIN", is_path,
                         INTUSE(__libc_enable_secure))) != 0
-         || ((len = is_dst (start, name, "PLATFORM", is_path, 0))
-             != 0))
+         || (len = is_dst (start, name, "PLATFORM", is_path, 0)) != 0
+         || (len = is_dst (start, name, "LIB", is_path, 0)) != 0)
        ++cnt;
 
       name = strchr (name + len, '$');
@@ -239,9 +239,10 @@ _dl_dst_substitute (struct link_map *l, const char *name, char *result,
          if ((len = is_dst (start, name, "ORIGIN", is_path,
                             INTUSE(__libc_enable_secure))) != 0)
            repl = l->l_origin;
-         else if ((len = is_dst (start, name, "PLATFORM", is_path,
-                                 0)) != 0)
+         else if ((len = is_dst (start, name, "PLATFORM", is_path, 0)) != 0)
            repl = GL(dl_platform);
+         else if ((len = is_dst (start, name, "LIB", is_path, 0)) != 0)
+           repl = DL_DST_LIB;
 
          if (repl != NULL && repl != (const char *) -1)
            {