static void signal_handler(int sig) { #ifdef SVR3SIGNALS /* * Some systems reset handler to SIG_DFL upon entry to handler. * In that case, we reregister our handler. */ (void) signal(sig, signal_handler); #endif switch(sig) { case SIGINT : intr = !0; exit(0); case SIGTERM : done = !0; return; case SIGUSR1 : stats_req = !0; return; case SIGUSR2 : rollulogpri(); return; case SIGCHLD : /* usually calls exit */ return; } }
/* * called upon receipt of signals */ static void signal_handler( int sig) { #ifdef SVR3SIGNALS /* * Some systems reset handler to SIG_DFL upon entry to handler. * In that case, we reregister our handler. */ (void) signal(sig, signal_handler); #endif switch (sig) { case SIGHUP: return; case SIGINT: exit(0); /*NOTREACHED*/ case SIGTERM: up6_close(); req6_close(); done = 1; return; case SIGUSR2: rollulogpri(); return; case SIGPIPE: return; case SIGCHLD: return; case SIGALRM: return; } }
/* * Called upon receipt of signals */ static void signal_handler( int sig) { #ifdef SVR3SIGNALS /* * Some systems reset handler to SIG_DFL upon entry to handler. * In that case, we reregister our handler. */ (void)signal(sig, signal_handler); #endif switch (sig) { case SIGINT: exit(0); case SIGTERM: exit(0); case SIGPIPE: return; case SIGUSR1: logstats = 1; return; case SIGUSR2: rollulogpri(); return; } }