aboutsummaryrefslogtreecommitdiff
path: root/sysdeps/unix/sysv/linux/pthread_kill.c
diff options
context:
space:
mode:
Diffstat (limited to 'sysdeps/unix/sysv/linux/pthread_kill.c')
-rw-r--r--sysdeps/unix/sysv/linux/pthread_kill.c16
1 files changed, 8 insertions, 8 deletions
diff --git a/sysdeps/unix/sysv/linux/pthread_kill.c b/sysdeps/unix/sysv/linux/pthread_kill.c
index 3a6171b815..80939cdd92 100644
--- a/sysdeps/unix/sysv/linux/pthread_kill.c
+++ b/sysdeps/unix/sysv/linux/pthread_kill.c
@@ -22,10 +22,10 @@
#include <tls.h>
#include <sysdep.h>
#include <unistd.h>
-
+#include <internal-signals.h>
int
-__pthread_kill (pthread_t threadid, int signo)
+__libc_pthread_kill (pthread_t threadid, int signo)
{
struct pthread *pd = (struct pthread *) threadid;
@@ -42,18 +42,18 @@ __pthread_kill (pthread_t threadid, int signo)
/* Not a valid thread handle. */
return ESRCH;
- /* Disallow sending the signal we use for cancellation, timers,
- for the setxid implementation. */
- if (signo == SIGCANCEL || signo == SIGTIMER || signo == SIGSETXID)
+ /* Disallow sending the signals we use for cancellation, timers,
+ setxid, etc. */
+ if (__is_internal_signal (signo))
return EINVAL;
/* We have a special syscall to do the work. */
INTERNAL_SYSCALL_DECL (err);
- pid_t pid = __getpid ();
-
+ pid_t pid = INTERNAL_SYSCALL_CALL (getpid, err);
int val = INTERNAL_SYSCALL_CALL (tgkill, err, pid, tid, signo);
return (INTERNAL_SYSCALL_ERROR_P (val, err)
? INTERNAL_SYSCALL_ERRNO (val, err) : 0);
}
-strong_alias (__pthread_kill, pthread_kill)
+strong_alias (__libc_pthread_kill, __pthread_kill)
+weak_alias (__libc_pthread_kill, pthread_kill)