diff options
author | Lennart Poettering <lennart@poettering.net> | 2010-04-13 02:36:56 +0200 |
---|---|---|
committer | Lennart Poettering <lennart@poettering.net> | 2010-04-13 02:36:56 +0200 |
commit | 57c0c30e735ef2a2d44a9aa0032a22ea8d089ced (patch) | |
tree | 88fb5483f3c9c26cb9135f1d7601f1378e76515f | |
parent | a337c6fcee2ab43bf791968f265a0a937715a3ff (diff) |
manager: we are not interested in SIGSTOP notifications
-rw-r--r-- | manager.c | 7 |
1 files changed, 7 insertions, 0 deletions
@@ -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 */ |