diff options
author | Ulrich Drepper <drepper@gmail.com> | 2011-10-29 12:43:18 -0400 |
---|---|---|
committer | Ulrich Drepper <drepper@gmail.com> | 2011-10-29 12:43:18 -0400 |
commit | d272e7f19dc2dae6d215f6ca6512d042575ed736 (patch) | |
tree | 5095f03835f99dac08e08785981f536a020f77ae | |
parent | 1bc3307181a2213a4d7253bced376c3de021605e (diff) | |
download | glibc-d272e7f19dc2dae6d215f6ca6512d042575ed736.zip glibc-d272e7f19dc2dae6d215f6ca6512d042575ed736.tar.gz glibc-d272e7f19dc2dae6d215f6ca6512d042575ed736.tar.bz2 |
Cleanups in ldconfig's chroot handling
-rw-r--r-- | ChangeLog | 2 | ||||
-rw-r--r-- | elf/chroot_canon.c | 5 |
2 files changed, 4 insertions, 3 deletions
@@ -1,5 +1,7 @@ 2011-10-29 Ulrich Drepper <drepper@gmail.com> + * elf/chroot_canon.c (chroot_canon): Cleanups. + * elf/dl-lookup.c (_dl_setup_hash): Avoid warning. [BZ #13335] diff --git a/elf/chroot_canon.c b/elf/chroot_canon.c index b639cfa..f8f3370 100644 --- a/elf/chroot_canon.c +++ b/elf/chroot_canon.c @@ -70,7 +70,6 @@ chroot_canon (const char *chroot, const char *name) for (start = end = name; *start; start = end) { struct stat64 st; - int n; /* Skip sequence of multiple path-separators. */ while (*start == '/') @@ -135,7 +134,7 @@ chroot_canon (const char *chroot, const char *name) goto error; } - n = readlink (rpath, buf, PATH_MAX - 1); + ssize_t n = readlink (rpath, buf, PATH_MAX - 1); if (n < 0) { if (*end == '\0') @@ -148,7 +147,7 @@ chroot_canon (const char *chroot, const char *name) extra_buf = alloca (PATH_MAX); len = strlen (end); - if ((long int) (n + len) >= PATH_MAX) + if (len >= PATH_MAX - n) { __set_errno (ENAMETOOLONG); goto error; |