my $sigset = POSIX::SigSet->new(); my $restart_action = POSIX::SigAction->new('restart',$sigset,POSIX::SA_NODEFER()); my $end_action = POSIX::SigAction->new('end',$sigset,POSIX::SA_NODEFER()); POSIX::sigaction(POSIX::SIGQUIT(), $end_action); POSIX::sigaction(POSIX::SIGHUP(), $restart_action); POSIX::sigaction(POSIX::SIGPIPE(), $restart_action); POSIX::sigaction(POSIX::SIGTERM(), $end_action); POSIX::sigaction(POSIX::SIGINT(), $restart_action); POSIX::sigaction(POSIX::SIGUSR1(), $end_action);