00001 #include <signal.h>
00002
00003 #include "../include/monitor.h"
00004
00005 volatile int doShutdown;
00006
00007 void terminate(int signum)
00008 {
00009 signal(signum, SIG_IGN);
00010 syslogMonitor(LOG_INFO, MON_INFO, "signals",
00011 "caugth deadly signal %d, service terminated", signum);
00012 doShutdown = 1;
00013 }
00014
00015 void init_signals(void)
00016 {
00017 signal(SIGTERM, terminate);
00018 signal(SIGHUP, SIG_IGN);
00019 signal(SIGINT, terminate);
00020 signal(SIGQUIT, terminate);
00021 signal(SIGABRT, terminate);
00022 signal(SIGALRM, SIG_IGN);
00023 signal(SIGURG, SIG_IGN);
00024
00025 signal(SIGPIPE, SIG_IGN);
00026 }