[hurd,commited 1/3] hurd: Add __fstatat64 to dl-sysdep.c
Samuel Thibault <[email protected]> Tue, 21 Jul 2026 09:17:39 +0200
| Newsgroups | gmane.os.hurd.cvs,gmane.comp.lib.glibc.alpha |
|---|---|
| Message-ID | <[email protected]> |
Fixes b9957a70b82203d91b0659b93cfe8632f954aba3
("Add system-wide tunables: cache ld.so.cache")
which adds calling it from rtld.
---
sysdeps/mach/hurd/Versions | 2 +-
sysdeps/mach/hurd/dl-sysdep.c | 11 +++++++++++
sysdeps/mach/hurd/i386/localplt.data | 1 +
sysdeps/mach/hurd/x86_64/localplt.data | 1 +
4 files changed, 14 insertions(+), 1 deletion(-)
diff --git a/sysdeps/mach/hurd/Versions b/sysdeps/mach/hurd/Versions
index 17592d3569..ce8694fc88 100644
--- a/sysdeps/mach/hurd/Versions
+++ b/sysdeps/mach/hurd/Versions
@@ -62,6 +62,6 @@ ld {
__read_nocancel; __pread64_nocancel;
__write_nocancel;
__getcwd;
- __stat64; __fstat64;
+ __stat64; __fstat64; __fstatat64;
}
}
diff --git a/sysdeps/mach/hurd/dl-sysdep.c b/sysdeps/mach/hurd/dl-sysdep.c
index fe6d453756..4d32c04069 100644
--- a/sysdeps/mach/hurd/dl-sysdep.c
+++ b/sysdeps/mach/hurd/dl-sysdep.c
@@ -542,6 +542,17 @@ __stat64 (const char *file, struct stat64 *buf)
}
libc_hidden_def (__stat64)
+check_no_hidden(__fstatat64);
+int weak_function
+__fstatat64 (int dirfd, const char *pathname, struct stat64 *buf, int flags)
+{
+ assert (dirfd == AT_FDCWD);
+ assert (flags == 0);
+
+ return __stat64 (pathname, buf);
+}
+libc_hidden_def (__fstatat64)
+
/* This function is called by the dynamic linker (rtld.c) to check for
existence of /etc/ld.so.preload. This stub will always fail, which
means that /etc/ld.so.preload is unsupported. */
diff --git a/sysdeps/mach/hurd/i386/localplt.data b/sysdeps/mach/hurd/i386/localplt.data
index b7882d0fbd..f0bddf933f 100644
--- a/sysdeps/mach/hurd/i386/localplt.data
+++ b/sysdeps/mach/hurd/i386/localplt.data
@@ -25,6 +25,7 @@ ld.so: __writev
ld.so: __libc_lseek64
ld.so: __mmap
ld.so: __fstat64
+ld.so: __fstatat64
ld.so: __stat64
ld.so: __access
ld.so: __getpid
diff --git a/sysdeps/mach/hurd/x86_64/localplt.data b/sysdeps/mach/hurd/x86_64/localplt.data
index b7689b5cb0..710abff73e 100644
--- a/sysdeps/mach/hurd/x86_64/localplt.data
+++ b/sysdeps/mach/hurd/x86_64/localplt.data
@@ -24,6 +24,7 @@ ld.so: __writev
ld.so: __libc_lseek64
ld.so: __mmap
ld.so: __fstat64
+ld.so: __fstatat64
ld.so: __stat64
ld.so: __access
ld.so: __getpid
--
2.53.0