@ -1480,8 +1480,13 @@ static int idtool(int argc,char **argv)
static void _sighandlerHup ( int sig )
static void _sighandlerHup ( int sig )
{
{
}
}
static void _sighandlerReallyQuit ( int sig )
{
exit ( 0 ) ;
}
static void _sighandlerQuit ( int sig )
static void _sighandlerQuit ( int sig )
{
{
alarm ( 5 ) ; // force exit after 5s
OneService * s = zt1Service ;
OneService * s = zt1Service ;
if ( s )
if ( s )
s - > terminate ( ) ;
s - > terminate ( ) ;
@ -1873,7 +1878,7 @@ int main(int argc,char **argv)
signal ( SIGIO , SIG_IGN ) ;
signal ( SIGIO , SIG_IGN ) ;
signal ( SIGUSR1 , SIG_IGN ) ;
signal ( SIGUSR1 , SIG_IGN ) ;
signal ( SIGUSR2 , SIG_IGN ) ;
signal ( SIGUSR2 , SIG_IGN ) ;
signal ( SIGALRM , SIG_IGN ) ;
signal ( SIGALRM , & _sighandlerReallyQuit ) ;
signal ( SIGINT , & _sighandlerQuit ) ;
signal ( SIGINT , & _sighandlerQuit ) ;
signal ( SIGTERM , & _sighandlerQuit ) ;
signal ( SIGTERM , & _sighandlerQuit ) ;
signal ( SIGQUIT , & _sighandlerQuit ) ;
signal ( SIGQUIT , & _sighandlerQuit ) ;