aboutsummaryrefslogtreecommitdiff
path: root/sysdeps/unix/sysv/linux/mips/mips64/getdents64.c
diff options
context:
space:
mode:
authorFlorian Weimer <fweimer@redhat.com>2019-06-07 09:27:01 +0200
committerFlorian Weimer <fweimer@redhat.com>2019-06-07 09:27:01 +0200
commit51ea67d54882318c4fa5394c386f4816ddc22408 (patch)
tree9b1f881f8d4e8b464a2d3b08b805e97a35457c7d /sysdeps/unix/sysv/linux/mips/mips64/getdents64.c
parentde751ebc9efa97ce0115e42bd55fa1beeb614380 (diff)
downloadglibc-51ea67d54882318c4fa5394c386f4816ddc22408.zip
glibc-51ea67d54882318c4fa5394c386f4816ddc22408.tar.gz
glibc-51ea67d54882318c4fa5394c386f4816ddc22408.tar.bz2
Linux: Add getdents64 system call
No 32-bit system call wrapper is added because the interface is problematic because it cannot deal with 64-bit inode numbers and 64-bit directory hashes. A future commit will deprecate the undocumented getdirentries and getdirentries64 functions. Reviewed-by: Carlos O'Donell <carlos@redhat.com>
Diffstat (limited to 'sysdeps/unix/sysv/linux/mips/mips64/getdents64.c')
-rw-r--r--sysdeps/unix/sysv/linux/mips/mips64/getdents64.c7
1 files changed, 6 insertions, 1 deletions
diff --git a/sysdeps/unix/sysv/linux/mips/mips64/getdents64.c b/sysdeps/unix/sysv/linux/mips/mips64/getdents64.c
index 8771c3c..1e22fa4 100644
--- a/sysdeps/unix/sysv/linux/mips/mips64/getdents64.c
+++ b/sysdeps/unix/sysv/linux/mips/mips64/getdents64.c
@@ -25,8 +25,10 @@
#include <scratch_buffer.h>
ssize_t
-__getdents64 (int fd, char *buf, size_t nbytes)
+__getdents64 (int fd, void *buf0, size_t nbytes)
{
+ char *buf = buf0;
+
#ifdef __NR_getdents64
ssize_t ret = INLINE_SYSCALL_CALL (getdents64, fd, buf, nbytes);
if (ret != -1)
@@ -107,6 +109,9 @@ __getdents64 (int fd, char *buf, size_t nbytes)
scratch_buffer_free (&tmpbuf);
return (char *) dp - buf;
}
+libc_hidden_def (__getdents64)
+weak_alias (__getdents64, getdents64)
+
#if _DIRENT_MATCHES_DIRENT64
strong_alias (__getdents64, __getdents)
#endif