aboutsummaryrefslogtreecommitdiff
path: root/initd/signal_linux.c
diff options
context:
space:
mode:
authorDavid Oberhollenzer <goliath@infraroot.at>2020-03-31 13:09:04 +0200
committerDavid Oberhollenzer <goliath@infraroot.at>2020-03-31 13:09:04 +0200
commit9f9807d4d3e0ecabc9bb67658d58644d714a9fd7 (patch)
tree0261dc3b87584006d98472408e0527c2eeda8c5f /initd/signal_linux.c
parent0d985a7430299aba28e136d9558497ae02c8085e (diff)
cleanup: initd: simplify and merge linux specific code into main.c
Targetting anything else than Linux isn't really relevant. All other systems ($BSD and other Unices) are a closed ecosystem where kernel & userspace are developed together. They don't need something like a third party init system, so compatibillity can be largely ignored. Signed-off-by: David Oberhollenzer <goliath@infraroot.at>
Diffstat (limited to 'initd/signal_linux.c')
-rw-r--r--initd/signal_linux.c42
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);
-}