This is the mail archive of the
libc-alpha@sourceware.org
mailing list for the glibc project.
[PATCH] sln: use stat64
- From: Mike Frysinger <vapier at gentoo dot org>
- To: libc-alpha at sourceware dot org
- Date: Sun, 6 Mar 2016 20:21:10 -0500
- Subject: [PATCH] sln: use stat64
- Authentication-results: sourceware.org; auth=none
From: Hongjiu Zhang <noctuorare@gmail.com>
When using sln on some filesystems which return 64-bit inodes, the stat
call might fail during install like so:
.../elf/sln .../elf/symlink.list
/lib32/libc.so.6: invalid destination: Value too large for defined data type
/lib32/ld-linux.so.2: invalid destination: Value too large for defined data type
Makefile:104: recipe for target 'install-symbolic-link' failed
Switch to using stat64 all the time to avoid this.
2016-03-06 Hongjiu Zhang <noctuorare@gmail.com>
* elf/sln.c (makesymlink): Change stat to stat64, and lstat to lstat64.
---
elf/sln.c | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
diff --git a/elf/sln.c b/elf/sln.c
index 9d57be2..f52cb9f 100644
--- a/elf/sln.c
+++ b/elf/sln.c
@@ -164,11 +164,11 @@ makesymlinks (const char *file)
static int
makesymlink (const char *src, const char *dest)
{
- struct stat stats;
+ struct stat64 stats;
const char *error;
/* Destination must not be a directory. */
- if (lstat (dest, &stats) == 0)
+ if (lstat64 (dest, &stats) == 0)
{
if (S_ISDIR (stats.st_mode))
{
--
2.6.2