diff --git a/src/libs/zbxnix/sighandler.c b/src/libs/zbxnix/sighandler.c index e316b24..fbfa65a 100644 --- a/src/libs/zbxnix/sighandler.c +++ b/src/libs/zbxnix/sighandler.c @@ -269,11 +269,14 @@ void zbx_set_common_signal_handlers(zbx_on_exit_t zbx_on_exit_cb_arg) sigaction(SIGTERM, &phan, NULL); sigaction(SIGUSR2, &phan, NULL); +/* We'd quite like fatal errors to create core files that allow analysis. */ +#if !defined(__illumos__) phan.sa_sigaction = fatal_signal_handler; sigaction(SIGILL, &phan, NULL); sigaction(SIGFPE, &phan, NULL); sigaction(SIGSEGV, &phan, NULL); sigaction(SIGBUS, &phan, NULL); +#endif phan.sa_sigaction = alarm_signal_handler; sigaction(SIGALRM, &phan, NULL);