diff options
Diffstat (limited to 'kernel/scalls')
-rw-r--r-- | kernel/scalls/sigaction.c | 9 | ||||
-rw-r--r-- | kernel/scalls/sigaction.h | 3 |
2 files changed, 12 insertions, 0 deletions
diff --git a/kernel/scalls/sigaction.c b/kernel/scalls/sigaction.c new file mode 100644 index 0000000..0166fab --- /dev/null +++ b/kernel/scalls/sigaction.c @@ -0,0 +1,9 @@ +#include <scalls/sigaction.h> +#include <signal.h> +#include <sched/scheduler.h> + +int syscall_sigaction(int sig, const struct sigaction *restrict act, + struct sigaction *restrict oact) { + set_signal_handler(sig, act->sa_handler); + return 0; +} diff --git a/kernel/scalls/sigaction.h b/kernel/scalls/sigaction.h new file mode 100644 index 0000000..0f0aa5f --- /dev/null +++ b/kernel/scalls/sigaction.h @@ -0,0 +1,3 @@ +#include <signal.h> +int syscall_sigaction(int sig, const struct sigaction *restrict act, + struct sigaction *restrict oact) ; |