aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--init/init.c4
1 files changed, 4 insertions, 0 deletions
diff --git a/init/init.c b/init/init.c
index 0c8dc89dc..850851173 100644
--- a/init/init.c
+++ b/init/init.c
@@ -453,6 +453,7 @@ static pid_t run(const struct init_action *a)
453 signal(SIGINT, SIG_DFL); 453 signal(SIGINT, SIG_DFL);
454 signal(SIGTERM, SIG_DFL); 454 signal(SIGTERM, SIG_DFL);
455 signal(SIGHUP, SIG_DFL); 455 signal(SIGHUP, SIG_DFL);
456 signal(SIGQUIT, SIG_DFL);
456 signal(SIGCONT, SIG_DFL); 457 signal(SIGCONT, SIG_DFL);
457 signal(SIGSTOP, SIG_DFL); 458 signal(SIGSTOP, SIG_DFL);
458 signal(SIGTSTP, SIG_DFL); 459 signal(SIGTSTP, SIG_DFL);
@@ -693,6 +694,7 @@ static void shutdown_system(void)
693 /* first disable all our signals */ 694 /* first disable all our signals */
694 sigemptyset(&block_signals); 695 sigemptyset(&block_signals);
695 sigaddset(&block_signals, SIGHUP); 696 sigaddset(&block_signals, SIGHUP);
697 sigaddset(&block_signals, SIGQUIT);
696 sigaddset(&block_signals, SIGCHLD); 698 sigaddset(&block_signals, SIGCHLD);
697 sigaddset(&block_signals, SIGUSR1); 699 sigaddset(&block_signals, SIGUSR1);
698 sigaddset(&block_signals, SIGUSR2); 700 sigaddset(&block_signals, SIGUSR2);
@@ -737,6 +739,7 @@ static void exec_signal(int sig)
737 /* unblock all signals, blocked in shutdown_system() */ 739 /* unblock all signals, blocked in shutdown_system() */
738 sigemptyset(&unblock_signals); 740 sigemptyset(&unblock_signals);
739 sigaddset(&unblock_signals, SIGHUP); 741 sigaddset(&unblock_signals, SIGHUP);
742 sigaddset(&unblock_signals, SIGQUIT);
740 sigaddset(&unblock_signals, SIGCHLD); 743 sigaddset(&unblock_signals, SIGCHLD);
741 sigaddset(&unblock_signals, SIGUSR1); 744 sigaddset(&unblock_signals, SIGUSR1);
742 sigaddset(&unblock_signals, SIGUSR2); 745 sigaddset(&unblock_signals, SIGUSR2);
@@ -1097,6 +1100,7 @@ extern int init_main(int argc, char **argv)
1097 /* Set up sig handlers -- be sure to 1100 /* Set up sig handlers -- be sure to
1098 * clear all of these in run() */ 1101 * clear all of these in run() */
1099 signal(SIGHUP, exec_signal); 1102 signal(SIGHUP, exec_signal);
1103 signal(SIGQUIT, exec_signal);
1100 signal(SIGUSR1, halt_signal); 1104 signal(SIGUSR1, halt_signal);
1101 signal(SIGUSR2, halt_signal); 1105 signal(SIGUSR2, halt_signal);
1102 signal(SIGINT, ctrlaltdel_signal); 1106 signal(SIGINT, ctrlaltdel_signal);