Lines Matching refs:signo
189 void Claim(int signo) { in Claim() argument
191 Register(signo); in Claim()
197 void Register(int signo) { in Register() argument
210 linked_sigaction64(signo, &handler_action, &action_); in Register()
212 linked_sigaction(signo, &handler_action, &action_); in Register()
277 static void Handler(int signo, siginfo_t* siginfo, void*);
295 void SignalChain::Handler(int signo, siginfo_t* siginfo, void* ucontext_raw) { in Handler() argument
299 for (const auto& handler : chains[signo].special_handlers_) { in Handler()
316 if (handler.sc_sigaction(signo, siginfo, ucontext_raw)) { in Handler()
325 int handler_flags = chains[signo].action_.sa_flags; in Handler()
329 sigorset(&mask, &ucontext->uc_sigmask64, &chains[signo].action_.sa_mask); in Handler()
332 sigorset(&mask, &ucontext->uc_sigmask, &chains[signo].action_.sa_mask); in Handler()
335 sigaddset(&mask, signo); in Handler()
345 chains[signo].action_.sa_sigaction(signo, siginfo, ucontext_raw); in Handler()
347 auto handler = chains[signo].action_.sa_handler; in Handler()
351 fatal("exiting due to SIG_DFL handler for signal %d", signo); in Handler()
353 handler(signo); in Handler()
406 extern "C" sighandler_t signal(int signo, sighandler_t handler) { in signal() argument
409 if (signo <= 0 || signo >= _NSIG) { in signal()
422 if (chains[signo].IsClaimed()) { in signal()
424 chains[signo].GetAction<struct sigaction>().sa_handler); in signal()
425 chains[signo].SetAction(&sa); in signal()
431 if (linked_sigaction(signo, &sa, &sa) == -1) { in signal()
439 extern "C" sighandler_t bsd_signal(int signo, sighandler_t handler) { in bsd_signal() argument
442 return signal(signo, handler); in bsd_signal()