aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorThomas Jarosch <thomas.jarosch@intra2net.com>2011-10-29 12:24:38 -0400
committerUlrich Drepper <drepper@gmail.com>2011-10-29 12:24:38 -0400
commit1760874da6e4a6934751ea12cf2c06eae936b53c (patch)
treec38588e3cc48868e9e0660703d32ee45a8c0d113
parent51d91b18954c998ccda310231f4d120f21a5fd79 (diff)
downloadglibc-1760874da6e4a6934751ea12cf2c06eae936b53c.tar
glibc-1760874da6e4a6934751ea12cf2c06eae936b53c.tar.gz
glibc-1760874da6e4a6934751ea12cf2c06eae936b53c.tar.bz2
glibc-1760874da6e4a6934751ea12cf2c06eae936b53c.zip
Fix readlink call in ldconfig's chroot handling
-rw-r--r--ChangeLog4
-rw-r--r--NEWS5
-rw-r--r--elf/chroot_canon.c4
3 files changed, 9 insertions, 4 deletions
diff --git a/ChangeLog b/ChangeLog
index 98db0948cc..8e0c37ca84 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,5 +1,9 @@
2011-10-29 Ulrich Drepper <drepper@gmail.com>
+ [BZ #13335]
+ * elf/chroot_canon.c (chroot_canon): Fix readlink call.
+ Patch by Thomas Jarosch <thomas.jarosch@intra2net.com>.
+
* string/test-strchr.c: Make usable for strchrnul testing.
* string/test-strchrnul.c: New file.
* string/Makefile (strop-tests): Add strchrnul.
diff --git a/NEWS b/NEWS
index 6063060352..c9952a896e 100644
--- a/NEWS
+++ b/NEWS
@@ -1,4 +1,4 @@
-GNU C Library NEWS -- history of user-visible changes. 2011-10-27
+GNU C Library NEWS -- history of user-visible changes. 2011-10-29
Copyright (C) 1992-2009, 2010, 2011 Free Software Foundation, Inc.
See the end for copying conditions.
@@ -11,7 +11,8 @@ Version 2.15
6779, 6783, 9696, 11589, 12403, 12847, 12868, 12852, 12874, 12885, 12892,
12907, 12922, 12935, 13007, 13021, 13067, 13068, 13090, 13092, 13114,
- 13118, 13123, 13134, 13138, 13150, 13179, 13192, 13268, 13291, 13344
+ 13118, 13123, 13134, 13138, 13150, 13179, 13192, 13268, 13291, 13335,
+ 13344
* New program pldd to list loaded object of a process
Implemented by Ulrich Drepper.
diff --git a/elf/chroot_canon.c b/elf/chroot_canon.c
index 54a6a4cc96..b639cfa82d 100644
--- a/elf/chroot_canon.c
+++ b/elf/chroot_canon.c
@@ -1,5 +1,5 @@
/* Return the canonical absolute name of a given file inside chroot.
- Copyright (C) 1996,1997,1998,1999,2000,2001,2004,2005,2010
+ Copyright (C) 1996,1997,1998,1999,2000,2001,2004,2005,2010,2011
Free Software Foundation, Inc.
This file is part of the GNU C Library.
@@ -135,7 +135,7 @@ chroot_canon (const char *chroot, const char *name)
goto error;
}
- n = readlink (rpath, buf, PATH_MAX);
+ n = readlink (rpath, buf, PATH_MAX - 1);
if (n < 0)
{
if (*end == '\0')