From bdb4f28edece4b81e99becf4ffcdc69449211764 Mon Sep 17 00:00:00 2001 From: James Y Knight Date: Thu, 1 Aug 2019 12:43:08 -0400 Subject: [PATCH] Add gettid and tgkill syscall wrappers. --- include/signal.h | 1 + include/unistd.h | 1 + src/linux/gettid.c | 8 ++++++++ src/linux/tgkill.c | 8 ++++++++ 4 files changed, 18 insertions(+) create mode 100644 src/linux/gettid.c create mode 100644 src/linux/tgkill.c diff --git a/include/signal.h b/include/signal.h index 5c48cb83..6843323a 100644 --- a/include/signal.h +++ b/include/signal.h @@ -257,6 +257,7 @@ void (*bsd_signal(int, void (*)(int)))(int); int sigisemptyset(const sigset_t *); int sigorset (sigset_t *, const sigset_t *, const sigset_t *); int sigandset(sigset_t *, const sigset_t *, const sigset_t *); +int tgkill(pid_t, pid_t, int); #define SA_NOMASK SA_NODEFER #define SA_ONESHOT SA_RESETHAND diff --git a/include/unistd.h b/include/unistd.h index 9485da7a..4764f157 100644 --- a/include/unistd.h +++ b/include/unistd.h @@ -188,6 +188,7 @@ char *get_current_dir_name(void); int syncfs(int); int euidaccess(const char *, int); int eaccess(const char *, int); +pid_t gettid(void); #endif #if defined(_LARGEFILE64_SOURCE) || defined(_GNU_SOURCE) diff --git a/src/linux/gettid.c b/src/linux/gettid.c new file mode 100644 index 00000000..6490101d --- /dev/null +++ b/src/linux/gettid.c @@ -0,0 +1,8 @@ +#define _GNU_SOURCE +#include +#include "syscall.h" + +pid_t gettid(void) +{ + return __syscall(SYS_gettid); +} diff --git a/src/linux/tgkill.c b/src/linux/tgkill.c new file mode 100644 index 00000000..97365d58 --- /dev/null +++ b/src/linux/tgkill.c @@ -0,0 +1,8 @@ +#define _GNU_SOURCE +#include +#include "syscall.h" + +int tgkill(pid_t pid, pid_t tid, int sig) +{ + return syscall(SYS_tgkill, pid, tid, sig); +} -- 2.22.0.770.g0f2c4a37fd-goog