summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--Userland/Libraries/LibC/signal.cpp6
-rw-r--r--Userland/Libraries/LibC/signal.h1
2 files changed, 7 insertions, 0 deletions
diff --git a/Userland/Libraries/LibC/signal.cpp b/Userland/Libraries/LibC/signal.cpp
index 20561ed6f0..929935abdb 100644
--- a/Userland/Libraries/LibC/signal.cpp
+++ b/Userland/Libraries/LibC/signal.cpp
@@ -163,6 +163,12 @@ int sigsuspend(const sigset_t* set)
return pselect(0, nullptr, nullptr, nullptr, nullptr, set);
}
+// https://pubs.opengroup.org/onlinepubs/9699919799/functions/sigwaitinfo.html
+int sigwaitinfo(sigset_t const* set, siginfo_t* info)
+{
+ return sigtimedwait(set, info, nullptr);
+}
+
int sigtimedwait(sigset_t const* set, siginfo_t* info, struct timespec const* timeout)
{
int rc = syscall(Syscall::SC_sigtimedwait, set, info, timeout);
diff --git a/Userland/Libraries/LibC/signal.h b/Userland/Libraries/LibC/signal.h
index f582a9e94c..9a86683f9e 100644
--- a/Userland/Libraries/LibC/signal.h
+++ b/Userland/Libraries/LibC/signal.h
@@ -28,6 +28,7 @@ int sigprocmask(int how, const sigset_t* set, sigset_t* old_set);
int sigpending(sigset_t*);
int sigsuspend(const sigset_t*);
int sigtimedwait(sigset_t const*, siginfo_t*, struct timespec const*);
+int sigwaitinfo(sigset_t const*, siginfo_t*);
int raise(int sig);
int getsignalbyname(const char*);
const char* getsignalname(int);