diff options
Diffstat (limited to 'accel-pptpd/triton')
-rw-r--r-- | accel-pptpd/triton/triton.c | 11 | ||||
-rw-r--r-- | accel-pptpd/triton/triton.h | 7 |
2 files changed, 18 insertions, 0 deletions
diff --git a/accel-pptpd/triton/triton.c b/accel-pptpd/triton/triton.c index b0aedbc7..9b9fd753 100644 --- a/accel-pptpd/triton/triton.c +++ b/accel-pptpd/triton/triton.c @@ -35,6 +35,17 @@ static void* triton_thread(struct _triton_thread_t *thread) sigset_t set; int sig; + sigfillset(&set); + pthread_sigmask(SIG_BLOCK, &set, NULL); + + sigdelset(&set, SIGUSR1); + sigdelset(&set, SIGQUIT); + sigdelset(&set, SIGSEGV); + sigdelset(&set, SIGFPE); + sigdelset(&set, SIGILL); + sigdelset(&set, SIGBUS); + pthread_sigmask(SIG_UNBLOCK, &set, NULL); + sigemptyset(&set); sigaddset(&set, SIGUSR1); sigaddset(&set, SIGQUIT); diff --git a/accel-pptpd/triton/triton.h b/accel-pptpd/triton/triton.h index b1df4971..8510a512 100644 --- a/accel-pptpd/triton/triton.h +++ b/accel-pptpd/triton/triton.h @@ -29,6 +29,13 @@ struct triton_timer_t void (*expire)(struct triton_timer_t *); }; +struct triton_sigchld_handler_t +{ + void *tpd; + int pid; + void (*handler)(struct triton_sigchld_handler_t *h, int status); +}; + struct conf_option_t { struct list_head entry; |