about summary refs log tree commit diff
diff options
context:
space:
mode:
authorUlrich Drepper <drepper@redhat.com>2010-05-03 10:40:30 -0700
committerUlrich Drepper <drepper@redhat.com>2010-05-03 10:40:30 -0700
commit49bd556d43f55d0bb6d76d57e846af85f0c986c9 (patch)
treeea97c3edf547af5eb32bd3ecde1fc46bb5e1f065
parent8497559725cd067a60c4d6dbf34ff02b5be387d5 (diff)
downloadglibc-49bd556d43f55d0bb6d76d57e846af85f0c986c9.tar.gz
glibc-49bd556d43f55d0bb6d76d57e846af85f0c986c9.tar.xz
glibc-49bd556d43f55d0bb6d76d57e846af85f0c986c9.zip
One more bug in ldconfig -r handling.
-rw-r--r--ChangeLog5
-rw-r--r--elf/ldconfig.c4
2 files changed, 8 insertions, 1 deletions
diff --git a/ChangeLog b/ChangeLog
index 4005fc82c5..85ab18394e 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,8 @@
+2010-05-03  Ulrich Drepper  <drepper@redhat.com>
+
+	* elf/ldconfig.c (parse_conf_include): Don't fall back to
+	directories named in config file outside the chroot.
+
 2010-02-02  Andreas Schwab  <schwab@redhat.com>
 
 	* sysdeps/generic/ldsodefs.h (struct rtld_global): Add
diff --git a/elf/ldconfig.c b/elf/ldconfig.c
index b9f1cc2d1b..4b9c4350f5 100644
--- a/elf/ldconfig.c
+++ b/elf/ldconfig.c
@@ -1174,7 +1174,9 @@ parse_conf_include (const char *config_file, unsigned int lineno,
   if (do_chroot && opt_chroot)
     {
       char *canon = chroot_canon (opt_chroot, pattern);
-      result = glob64 (canon ?: pattern, 0, NULL, &gl);
+      if (canon == NULL)
+	return;
+      result = glob64 (canon, 0, NULL, &gl);
       free (canon);
     }
   else