summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--libc/sysdeps/linux/common/__syscall_fcntl.c14
-rw-r--r--libc/sysdeps/linux/common/__syscall_fcntl64.c6
2 files changed, 11 insertions, 9 deletions
diff --git a/libc/sysdeps/linux/common/__syscall_fcntl.c b/libc/sysdeps/linux/common/__syscall_fcntl.c
index 701877c06..f094616cb 100644
--- a/libc/sysdeps/linux/common/__syscall_fcntl.c
+++ b/libc/sysdeps/linux/common/__syscall_fcntl.c
@@ -12,14 +12,14 @@
#include <fcntl.h>
#if defined __UCLIBC_HAS_LFS__ && defined __NR_fcntl64
-extern int __libc_fcntl64(int fd, int cmd, ...);
+extern int __fcntl64(int fd, int cmd, ...) attribute_hidden;
#endif
#define __NR___syscall_fcntl __NR_fcntl
static inline
_syscall3(int, __syscall_fcntl, int, fd, int, cmd, long, arg);
-int __libc_fcntl(int fd, int cmd, ...)
+int attribute_hidden __fcntl(int fd, int cmd, ...)
{
long arg;
va_list list;
@@ -30,7 +30,7 @@ int __libc_fcntl(int fd, int cmd, ...)
if (cmd == F_GETLK64 || cmd == F_SETLK64 || cmd == F_SETLKW64) {
#if defined __UCLIBC_HAS_LFS__ && defined __NR_fcntl64
- return __libc_fcntl64(fd, cmd, arg);
+ return __fcntl64(fd, cmd, arg);
#else
__set_errno(ENOSYS);
return -1;
@@ -38,8 +38,10 @@ int __libc_fcntl(int fd, int cmd, ...)
}
return (__syscall_fcntl(fd, cmd, arg));
}
-
-weak_alias(__libc_fcntl, fcntl)
+strong_alias(__fcntl,fcntl)
+weak_alias(__fcntl,__libc_fcntl)
#if ! defined __NR_fcntl64 && defined __UCLIBC_HAS_LFS__
-weak_alias(__libc_fcntl, fcntl64)
+hidden_strong_alias(__fcntl,__fcntl64)
+weak_alias(__fcntl,fcntl64)
+weak_alias(__fcntl,__libc_fcntl64)
#endif
diff --git a/libc/sysdeps/linux/common/__syscall_fcntl64.c b/libc/sysdeps/linux/common/__syscall_fcntl64.c
index 7f9164b52..763297cf0 100644
--- a/libc/sysdeps/linux/common/__syscall_fcntl64.c
+++ b/libc/sysdeps/linux/common/__syscall_fcntl64.c
@@ -14,7 +14,7 @@
#if defined __UCLIBC_HAS_LFS__ && defined __NR_fcntl64
#define __NR___syscall_fcntl64 __NR_fcntl64
static inline _syscall3(int, __syscall_fcntl64, int, fd, int, cmd, long, arg);
-int __libc_fcntl64(int fd, int cmd, ...)
+int attribute_hidden __fcntl64(int fd, int cmd, ...)
{
long arg;
va_list list;
@@ -25,6 +25,6 @@ int __libc_fcntl64(int fd, int cmd, ...)
va_end(list);
return (__syscall_fcntl64(fd, cmd, arg));
}
-
-weak_alias(__libc_fcntl64, fcntl64)
+strong_alias(__fcntl64,fcntl64)
+weak_alias(__fcntl64,__libc_fcntl64)
#endif