diff options
author | Michel Stam <m.stam@fugro.nl> | 2014-10-13 16:14:36 +0200 |
---|---|---|
committer | John Crispin <blogic@openwrt.org> | 2014-10-12 13:24:11 +0200 |
commit | 3ff99010e61a0299257ffc91467a16d278a7e774 (patch) | |
tree | 6c3cc68e3faa034a25bee91e320dabb47c014b41 /signal.c | |
parent | 8b27adcf7516fa89ced66c840cfb085f2b6067af (diff) | |
download | unitd-3ff99010e61a0299257ffc91467a16d278a7e774.tar unitd-3ff99010e61a0299257ffc91467a16d278a7e774.zip |
Fix ctrl+alt+del support
The previous patch did not catch SIGINT, which is used by the
kernel to indicate to the init process that the system should
reboot.
Signed-off-by: Michel Stam <m.stam@fugro.nl>
Diffstat (limited to 'signal.c')
-rw-r--r-- | signal.c | 2 |
1 files changed, 2 insertions, 0 deletions
@@ -36,6 +36,7 @@ static void signal_shutdown(int signal, siginfo_t *siginfo, void *data) char *msg = NULL; switch(signal) { + case SIGINT: case SIGTERM: event = RB_AUTOBOOT; msg = "reboot"; @@ -84,6 +85,7 @@ void procd_signal(void) if (getpid() != 1) return; sigaction(SIGTERM, &sa_shutdown, NULL); + sigaction(SIGINT, &sa_shutdown, NULL); sigaction(SIGUSR1, &sa_shutdown, NULL); sigaction(SIGUSR2, &sa_shutdown, NULL); sigaction(SIGSEGV, &sa_crash, NULL); |