{
pid_t pid;
sigset_t set, oset;
+ SIGNAL_HANDLER istat, qstat;
#ifdef WAITINT
int status;
#endif
if (sigsok == -1) {
- /* block a couple of signals */
- sigemptyset (&set);
- sigaddset (&set, SIGINT);
- sigaddset (&set, SIGQUIT);
- SIGPROCMASK (SIG_BLOCK, &set, &oset);
+ /* ignore a couple of signals */
+ istat = SIGNAL (SIGINT, SIG_IGN);
+ qstat = SIGNAL (SIGQUIT, SIG_IGN);
}
#ifdef HAVE_WAITPID
#endif
if (sigsok == -1) {
- /* reset the signal mask */
- SIGPROCMASK (SIG_SETMASK, &oset, &set);
+ /* reset the signal handlers */
+ SIGNAL (SIGINT, istat);
+ SIGNAL (SIGQUIT, qstat);
}
#ifdef WAITINT