| 616 if (sigemptyset(&sigset)) { |
615 if (sigemptyset(&sigset)) { |
| 617 snprintf(errmsg, sizeof(errmsg), "Warning: couldn't initialise empty signal set"); |
616 snprintf(errmsg, sizeof(errmsg), "Warning: couldn't initialise empty signal set"); |
| 618 perror(errmsg); |
617 perror(errmsg); |
| 619 } |
618 } |
| 620 for(sig_indx = 0; catch_sig_list[sig_indx] != -1; ++sig_indx) { |
619 for(sig_indx = 0; catch_sig_list[sig_indx] != -1; ++sig_indx) { |
| 621 if((prev_sig_disp = signal(catch_sig_list[sig_indx], sighandler)) == SIG_ERR) { |
620 if(signal(catch_sig_list[sig_indx], sighandler) == SIG_ERR) { |
| 622 snprintf(errmsg, sizeof(errmsg), "Warning: couldn't set signal %d for catching", |
621 snprintf(errmsg, sizeof(errmsg), "Warning: couldn't set signal %d for catching", |
| 623 catch_sig_list[sig_indx]); |
622 catch_sig_list[sig_indx]); |
| 624 perror(errmsg); |
623 perror(errmsg); |
| 625 } |
624 } |
| 626 if(sigaddset(&sigset, catch_sig_list[sig_indx])) { |
625 if(sigaddset(&sigset, catch_sig_list[sig_indx])) { |
| 628 catch_sig_list[sig_indx]); |
627 catch_sig_list[sig_indx]); |
| 629 perror(errmsg); |
628 perror(errmsg); |
| 630 } |
629 } |
| 631 } |
630 } |
| 632 for(sig_indx = 0; ignore_sig_list[sig_indx] != -1; ++sig_indx) { |
631 for(sig_indx = 0; ignore_sig_list[sig_indx] != -1; ++sig_indx) { |
| 633 if((prev_sig_disp = signal(ignore_sig_list[sig_indx], SIG_IGN)) == SIG_ERR) { |
632 if(signal(ignore_sig_list[sig_indx], SIG_IGN) == SIG_ERR) { |
| 634 snprintf(errmsg, sizeof(errmsg), "Warning: couldn't set signal %d to ignore", |
633 snprintf(errmsg, sizeof(errmsg), "Warning: couldn't set signal %d to ignore", |
| 635 ignore_sig_list[sig_indx]); |
634 ignore_sig_list[sig_indx]); |
| 636 perror(errmsg); |
635 perror(errmsg); |
| 637 } |
636 } |
| 638 } |
637 } |