summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--libc/sysdeps/linux/common/__rt_sigtimedwait.c8
-rw-r--r--libc/sysdeps/linux/common/sigpending.c2
-rw-r--r--libc/sysdeps/linux/common/sigsuspend.c16
3 files changed, 12 insertions, 14 deletions
diff --git a/libc/sysdeps/linux/common/__rt_sigtimedwait.c b/libc/sysdeps/linux/common/__rt_sigtimedwait.c
index 8862bc95b..01cf8f456 100644
--- a/libc/sysdeps/linux/common/__rt_sigtimedwait.c
+++ b/libc/sysdeps/linux/common/__rt_sigtimedwait.c
@@ -26,10 +26,8 @@ int attribute_hidden __sigtimedwait(const sigset_t * set, siginfo_t * info,
{
return __rt_sigtimedwait(set, info, timeout, _NSIG / 8);
}
-weak_alias (__sigtimedwait, sigtimedwait)
-weak_alias (__sigwaitinfo, sigwaitinfo)
#else
-int sigwaitinfo(const sigset_t * set, siginfo_t * info)
+int attribute_hidden __sigwaitinfo(const sigset_t * set, siginfo_t * info)
{
if (set == NULL)
__set_errno(EINVAL);
@@ -38,7 +36,7 @@ int sigwaitinfo(const sigset_t * set, siginfo_t * info)
return -1;
}
-int sigtimedwait(const sigset_t * set, siginfo_t * info,
+int attribute_hidden __sigtimedwait(const sigset_t * set, siginfo_t * info,
const struct timespec *timeout)
{
if (set == NULL)
@@ -48,3 +46,5 @@ int sigtimedwait(const sigset_t * set, siginfo_t * info,
return -1;
}
#endif
+strong_alias(__sigtimedwait,sigtimedwait)
+strong_alias(__sigwaitinfo,sigwaitinfo)
diff --git a/libc/sysdeps/linux/common/sigpending.c b/libc/sysdeps/linux/common/sigpending.c
index f634aa6f1..66513feb6 100644
--- a/libc/sysdeps/linux/common/sigpending.c
+++ b/libc/sysdeps/linux/common/sigpending.c
@@ -13,7 +13,7 @@
#ifdef __NR_rt_sigpending
#define __NR___rt_sigpending __NR_rt_sigpending
-_syscall2(int, __rt_sigpending, sigset_t *, set, size_t, size);
+static inline _syscall2(int, __rt_sigpending, sigset_t *, set, size_t, size);
int sigpending(sigset_t * set)
{
diff --git a/libc/sysdeps/linux/common/sigsuspend.c b/libc/sysdeps/linux/common/sigsuspend.c
index 878cadd3e..be69c62c2 100644
--- a/libc/sysdeps/linux/common/sigsuspend.c
+++ b/libc/sysdeps/linux/common/sigsuspend.c
@@ -13,22 +13,20 @@
#ifdef __NR_rt_sigsuspend
#define __NR___rt_sigsuspend __NR_rt_sigsuspend
-_syscall2(int, __rt_sigsuspend, const sigset_t *, mask, size_t, size);
+static inline _syscall2(int, __rt_sigsuspend, const sigset_t *, mask, size_t, size);
-int sigsuspend(const sigset_t * mask)
+int attribute_hidden __sigsuspend(const sigset_t * mask)
{
return __rt_sigsuspend(mask, _NSIG / 8);
}
-
#else
-
-#define __NR___sigsuspend __NR_sigsuspend
-_syscall3(int, __sigsuspend, int, a, unsigned long int, b,
+#define __NR___syscall_sigsuspend __NR_sigsuspend
+static inline _syscall3(int, __syscall_sigsuspend, int, a, unsigned long int, b,
unsigned long int, c);
-int sigsuspend(const sigset_t * set)
+int attribute_hidden __sigsuspend(const sigset_t * set)
{
- return __sigsuspend(0, 0, set->__val[0]);
+ return __syscall_sigsuspend(0, 0, set->__val[0]);
}
-
#endif
+strong_alias(__sigsuspend,sigsuspend)