From: Lennart Poettering Date: Tue, 13 Apr 2010 00:36:56 +0000 (+0200) Subject: manager: we are not interested in SIGSTOP notifications X-Git-Tag: v1~537 X-Git-Url: https://www.chiark.greenend.org.uk/ucgi/~ianmdlvl/git?p=elogind.git;a=commitdiff_plain;h=57c0c30e735ef2a2d44a9aa0032a22ea8d089ced manager: we are not interested in SIGSTOP notifications --- diff --git a/manager.c b/manager.c index 36733b0eb..e7c66099a 100644 --- a/manager.c +++ b/manager.c @@ -72,9 +72,16 @@ static int enable_special_signals(Manager *m) { static int manager_setup_signals(Manager *m) { sigset_t mask; struct epoll_event ev; + struct sigaction sa; assert(m); + /* We are not interested in SIGSTOP and friends. */ + zero(sa); + sa.sa_handler = SIG_DFL; + sa.sa_flags = SA_NOCLDSTOP|SA_RESTART; + assert_se(sigaction(SIGCHLD, &sa, NULL) == 0); + assert_se(sigemptyset(&mask) == 0); assert_se(sigaddset(&mask, SIGCHLD) == 0); assert_se(sigaddset(&mask, SIGINT) == 0); /* Kernel sends us this on control-alt-del */