diff options
author | Matthias Schiffer <mschiffer@universe-factory.net> | 2015-12-21 14:49:18 +0100 |
---|---|---|
committer | Matthias Schiffer <mschiffer@universe-factory.net> | 2015-12-21 14:49:18 +0100 |
commit | 0358cbf937ee73447970546290a01f82c450dab9 (patch) | |
tree | 772e371c39ff144d2967351cbb96c3b46df1ceb8 | |
parent | 0e159b6d641ae3a2568ba9dfcee95f4f2560fbaf (diff) | |
download | fastd-0358cbf937ee73447970546290a01f82c450dab9.tar fastd-0358cbf937ee73447970546290a01f82c450dab9.zip |
Don't block fatal signals
-rw-r--r-- | src/fastd.c | 6 |
1 files changed, 5 insertions, 1 deletions
diff --git a/src/fastd.c b/src/fastd.c index 8580cf2..64bc294 100644 --- a/src/fastd.c +++ b/src/fastd.c @@ -108,9 +108,13 @@ static void on_signal(int signo) { /** Installs signal handlers */ static void init_signals(void) { + /* block all non-fatal signals */ sigset_t set; sigfillset(&set); - /* block all signals */ + sigdelset(&set, SIGILL); + sigdelset(&set, SIGABRT); + sigdelset(&set, SIGFPE); + sigdelset(&set, SIGSEGV); pthread_sigmask(SIG_SETMASK, &set, NULL); struct sigaction action = {}; |