diff options
Diffstat (limited to 'initd/signal_linux.c')
-rw-r--r-- | initd/signal_linux.c | 42 |
1 files changed, 0 insertions, 42 deletions
diff --git a/initd/signal_linux.c b/initd/signal_linux.c deleted file mode 100644 index b19d715..0000000 --- a/initd/signal_linux.c +++ /dev/null @@ -1,42 +0,0 @@ -/* SPDX-License-Identifier: ISC */ -#include <stdio.h> - -#include "init.h" - -int sigsetup(void) -{ - sigset_t mask; - int sfd; - - sigfillset(&mask); - if (sigprocmask(SIG_SETMASK, &mask, NULL) == -1) { - perror("sigprocmask"); - return -1; - } - - sigemptyset(&mask); - sigaddset(&mask, SIGCHLD); - sigaddset(&mask, SIGINT); - sigaddset(&mask, SIGTERM); - sigaddset(&mask, SIGUSR1); - sigaddset(&mask, SIGHUP); - - sfd = signalfd(-1, &mask, SFD_CLOEXEC); - if (sfd == -1) { - perror("signalfd"); - return -1; - } - - if (reboot(LINUX_REBOOT_CMD_CAD_OFF)) - perror("cannot disable CTRL+ALT+DEL"); - - return sfd; -} - -void sigreset(void) -{ - sigset_t mask; - - sigemptyset(&mask); - sigprocmask(SIG_SETMASK, &mask, NULL); -} |