diff options
Diffstat (limited to 'libc/sysdeps/linux/common/openat.c')
-rw-r--r-- | libc/sysdeps/linux/common/openat.c | 12 |
1 files changed, 3 insertions, 9 deletions
diff --git a/libc/sysdeps/linux/common/openat.c b/libc/sysdeps/linux/common/openat.c index 8380ec687..f6032da2c 100644 --- a/libc/sysdeps/linux/common/openat.c +++ b/libc/sysdeps/linux/common/openat.c @@ -6,19 +6,13 @@ * Licensed under the LGPL v2.1, see the file COPYING.LIB in this tarball. */ -#define openat __xx_openat #include <sys/syscall.h> #include <fcntl.h> -#undef openat #ifdef __NR_openat -/* The openat() prototype is varargs based, but we don't care about that - * here, so need to provide our own dedicated signature. - */ -extern int openat(int fd, const char *file, int oflag, mode_t mode); -libc_hidden_proto(openat) - -_syscall4(int, openat, int, fd, const char *, file, int, oflag, mode_t, mode) +# define __NR___syscall_openat __NR_openat +static __inline__ _syscall4(int, __syscall_openat, int, fd, const char *, file, int, oflag, mode_t, mode) +strong_alias_untyped(__syscall_openat,openat) libc_hidden_def(openat) #else /* should add emulation with open() and /proc/self/fd/ ... */ |