Lines Matching full:evsignal
62 #include "evsignal.h"
137 /* Helper: set the signal handler for evsignal to handler in base, so that
141 int evsignal, void (*handler)(int))
155 if (evsignal >= sig->sh_old_max) {
156 int new_max = evsignal + 1;
157 event_debug(("%s: evsignal (%d) >= sh_old_max (%d), resizing",
158 __func__, evsignal, sig->sh_old_max));
173 sig->sh_old[evsignal] = malloc(sizeof *sig->sh_old[evsignal]);
174 if (sig->sh_old[evsignal] == NULL) {
186 if (sigaction(evsignal, &sa, sig->sh_old[evsignal]) == -1) {
188 free(sig->sh_old[evsignal]);
192 if ((sh = signal(evsignal, handler)) == SIG_ERR) {
194 free(sig->sh_old[evsignal]);
197 *sig->sh_old[evsignal] = sh;
206 int evsignal;
212 evsignal = EVENT_SIGNAL(ev);
213 assert(evsignal >= 0 && evsignal < NSIG);
214 if (TAILQ_EMPTY(&sig->evsigevents[evsignal])) {
217 base, evsignal, evsignal_handler) == -1)
231 TAILQ_INSERT_TAIL(&sig->evsigevents[evsignal], ev, ev_signal_next);
237 _evsignal_restore_handler(struct event_base *base, int evsignal)
248 sh = sig->sh_old[evsignal];
249 sig->sh_old[evsignal] = NULL;
251 if (sigaction(evsignal, sh, NULL) == -1) {
256 if (signal(evsignal, *sh) == SIG_ERR) {
271 int evsignal = EVENT_SIGNAL(ev);
273 assert(evsignal >= 0 && evsignal < NSIG);
276 TAILQ_REMOVE(&sig->evsigevents[evsignal], ev, ev_signal_next);
278 if (!TAILQ_EMPTY(&sig->evsigevents[evsignal]))