/illumos-gate/usr/src/cmd/mailx/ |
H A D | sigretro.c | 105 sigsys(int sig, sigtype func) in sigsys() argument 109 old = sigdisp(sig); in sigsys() 110 signal(sig, func); in sigsys() 121 sigset(int sig, sigtype func) in sigset() argument 125 if (sig < 1 || sig > NSIG) { in sigset() 129 old = sigdisp(sig); in sigset() 134 sighold(sig); in sigset() 137 sigtable[sig].s_flag |= SSET; in sigset() 138 sigtable[sig].s_func = func; in sigset() 145 if ((sigtable[sig].s_flag & SHELD) == 0) in sigset() [all …]
|
/illumos-gate/usr/src/contrib/ast/src/cmd/ksh93/bltins/ |
H A D | trap.c | 47 register int sig, clear = 0, dflag = 0, pflag = 0; in b_trap() local 50 while (sig = optget(argv, sh_opttrap)) switch (sig) in b_trap() 96 sig = sig_number(shp,arg); in b_trap() 97 if(sig<0) in b_trap() 103 if(sig&SH_TRAP) in b_trap() 106 sig &= ~SH_TRAP; in b_trap() 107 if(sig>SH_DEBUGTRAP) in b_trap() 114 if(arg=trap[sig]) in b_trap() 119 if(shp->st.trap[sig]) in b_trap() 120 free(shp->st.trap[sig]); in b_trap() [all …]
|
/illumos-gate/usr/src/contrib/ast/src/cmd/ksh93/sh/ |
H A D | fault.c | 40 #define abortsig(sig) (sig==SIGABRT || sig==SIGBUS || sig==SIGILL || sig==SIGSEGV) argument 63 void sh_fault(register int sig) in sh_fault() argument 71 if(!(sig&SH_TRAP)) in sh_fault() 72 signal(sig, sh_fault); in sh_fault() 73 sig &= ~SH_TRAP; in sh_fault() 75 if(sig==SIGWINCH) in sh_fault() 87 trap = shp->st.trapcom[sig]; in sh_fault() 91 if(!(shp->sigflag[sig]&SH_SIGIGNORE)) in sh_fault() 92 shp->savesig = sig; in sh_fault() 95 if(sig==SIGALRM && shp->bltinfun==b_sleep) in sh_fault() [all …]
|
/illumos-gate/usr/src/lib/libinetutil/common/ |
H A D | eh.c | 59 int sig; in iu_eh_create() local 73 for (sig = 0; sig < NSIG; sig++) { in iu_eh_create() 74 eh->iueh_sig_info[sig].iues_pending = B_FALSE; in iu_eh_create() 75 eh->iueh_sig_info[sig].iues_handler = NULL; in iu_eh_create() 76 eh->iueh_sig_info[sig].iues_data = NULL; in iu_eh_create() 94 int sig; in iu_eh_destroy() local 96 for (sig = 0; sig < NSIG; sig++) in iu_eh_destroy() 97 if (signal_to_eh[sig] == eh) in iu_eh_destroy() 98 (void) iu_eh_unregister_signal(eh, sig, NULL); in iu_eh_destroy() 272 int n_lit, timeout, sig, saved_errno; in iu_handle_events() local [all …]
|
/illumos-gate/usr/src/lib/brand/solaris10/s10_brand/common/ |
H A D | s10_signal.c | 149 #define SIGADDSET(sigset, sig) \ argument 150 ((sigset)->__sigbits[SIGWORD(sig)] |= BITMASK(sig)) 152 #define SIGISMEMBER(sigset, sig) \ argument 153 (((sigset)->__sigbits[SIGWORD(sig)] & BITMASK(sig)) != 0) 159 s10sig_to_native(int sig) in s10sig_to_native() argument 162 if (sig <= SIGJVM2) in s10sig_to_native() 163 return (sig); in s10sig_to_native() 169 if (sig < S10_SIGRTMIN) /* can't happen */ in s10sig_to_native() 176 if (sig > S10_MAXSIG) in s10sig_to_native() 184 sig -= S10_SIGRTMIN; in s10sig_to_native() [all …]
|
/illumos-gate/usr/src/cmd/sh/ |
H A D | fault.c | 48 static void sigsegv(int sig, siginfo_t *sip, ucontext_t *uap); 174 done(int sig) in done() argument 202 if (sig) { in done() 209 if (sig == SIGHUP) in done() 213 sigaddset(&set, sig); in done() 215 handle(sig, SIG_DFL); in done() 216 kill(mypid, sig); in done() 222 fault(int sig) in fault() argument 226 switch (sig) { in fault() 233 if (trapcom[sig]) in fault() [all …]
|
/illumos-gate/usr/src/cmd/mdb/common/mdb/ |
H A D | mdb_signal.c | 38 sig_stub(int sig, siginfo_t *sip, void *ucp) in sig_stub() argument 40 sig_handlers[sig](sig, sip, (ucontext_t *)ucp, sig_data[sig]); in sig_stub() 44 mdb_signal_sethandler(int sig, mdb_signal_f *handler, void *data) in mdb_signal_sethandler() argument 49 ASSERT(sig > 0 && sig < NSIG && sig != SIGKILL && sig != SIGSTOP); in mdb_signal_sethandler() 51 sig_handlers[sig] = handler; in mdb_signal_sethandler() 52 sig_data[sig] = data; in mdb_signal_sethandler() 67 if (sig == SIGWINCH || sig == SIGTSTP) { in mdb_signal_sethandler() 74 if ((status = sigaction(sig, &act, NULL)) == 0) in mdb_signal_sethandler() 75 (void) mdb_signal_unblock(sig); in mdb_signal_sethandler() 81 mdb_signal_gethandler(int sig, void **datap) in mdb_signal_gethandler() argument [all …]
|
/illumos-gate/usr/src/lib/libc/port/sys/ |
H A D | signal.c | 63 signal(int sig, void(*func)(int)))(int) in signal() argument 68 CHECK_SIG(sig, SIG_ERR); in signal() 78 if (sig == SIGCHLD) { in signal() 84 if (STOPDEFAULT(sig)) in signal() 87 if (sigaction(sig, &nact, &oact) < 0) in signal() 94 sighold(int sig) in sighold() argument 98 CHECK_SIG(sig, -1); in sighold() 104 if (sigaddset(&set, sig) < 0) in sighold() 110 sigrelse(int sig) in sigrelse() argument 114 CHECK_SIG(sig, -1); in sigrelse() [all …]
|
/illumos-gate/usr/src/uts/common/syscall/ |
H A D | sigaction.c | 43 sigaction(int sig, struct sigaction *actp, struct sigaction *oactp) in sigaction() argument 52 if (sig <= 0 || sig >= NSIG || in sigaction() 53 (actp != NULL && sigismember(&cantmask, sig))) in sigaction() 84 disp = ua->u_signal[sig - 1]; in sigaction() 88 set = ua->u_sigmask[sig-1]; in sigaction() 89 if (sigismember(&p->p_siginfo, sig)) in sigaction() 91 if (sigismember(&ua->u_sigrestart, sig)) in sigaction() 93 if (sigismember(&ua->u_sigonstack, sig)) in sigaction() 95 if (sigismember(&ua->u_sigresethand, sig)) in sigaction() 97 if (sigismember(&ua->u_signodefer, sig)) in sigaction() [all …]
|
H A D | sigqueue.c | 49 if ((uint_t)sigsend->sig >= NSIG) in sigqkill() 101 kill(pid_t pid, int sig) in kill() argument 107 v.sig = sig; in kill() 123 sigqueue(pid_t pid, int sig, /* union sigval */ void *value, in sigqueue() argument 132 if (pid <= 0 || !sigwillqueue(sig, si_code)) in sigqueue() 159 v.sig = sig; in sigqueue() 199 sigqueue32(pid_t pid, int sig, /* union sigval32 */ caddr32_t value, in sigqueue32() argument 206 return (sigqueue(pid, sig, sv.sival_ptr, si_code, block)); in sigqueue32()
|
/illumos-gate/usr/src/cmd/sendmail/libsm/ |
H A D | signal.c | 39 sm_signal(sig, handler) in sm_signal() argument 40 int sig; in sm_signal() 61 if (sigaction(sig, &n, &o) < 0) 73 return signal(sig, handler); 75 return sigset(sig, handler); 86 if (sigaction(sig, &n, &o) < 0) 105 sm_blocksignal(sig) in sm_blocksignal() argument 106 int sig; in sm_blocksignal() 112 return (sigblock(sigmask(sig)) & sigmask(sig)) != 0; 117 handler = sigset(sig, SIG_HOLD); [all …]
|
/illumos-gate/usr/src/lib/libc/port/gen/ |
H A D | sigsetops.c | 57 sigvalid(int sig) in sigvalid() argument 59 if (sig <= 0 || sig > (MAXBITNO * SIGSETSIZE)) in sigvalid() 67 return ((sigs.__sigbits[sigword(sig)] & bitmask(sig)) != 0); in sigvalid() 93 sigaddset(sigset_t *set, int sig) in sigaddset() argument 95 if (!sigvalid(sig)) { in sigaddset() 99 set->__sigbits[sigword(sig)] |= bitmask(sig); in sigaddset() 104 sigdelset(sigset_t *set, int sig) in sigdelset() argument 106 if (!sigvalid(sig)) { in sigdelset() 110 set->__sigbits[sigword(sig)] &= ~bitmask(sig); in sigdelset() 115 sigismember(const sigset_t *set, int sig) in sigismember() argument [all …]
|
H A D | ssignal.c | 48 ssignal(int sig, int (*action)(int)))(int) in ssignal() argument 52 if (sig >= MINSIG && sig <= MAXSIGNUM) { in ssignal() 53 savefn = sigs[sig-MINSIG]; in ssignal() 54 sigs[sig-MINSIG] = action; in ssignal() 63 gsignal(int sig) in gsignal() argument 67 if (sig < MINSIG || sig > MAXSIGNUM || in gsignal() 68 (sigfn = sigs[sig-MINSIG]) == (int(*)(int))(uintptr_t)SIG_DFL) { in gsignal() 74 sigs[sig-MINSIG] = (int(*)(int))(uintptr_t)SIG_DFL; in gsignal() 75 return ((*sigfn)(sig)); in gsignal()
|
/illumos-gate/usr/src/uts/common/os/ |
H A D | sig.c | 123 psignal(proc_t *p, int sig) in psignal() argument 126 sigtoproc(p, NULL, sig); in psignal() 134 tsignal(kthread_t *t, int sig) in tsignal() argument 139 sigtoproc(p, t, sig); in tsignal() 144 signal_is_blocked(kthread_t *t, int sig) in signal_is_blocked() argument 146 return (sigismember(&t->t_hold, sig) || in signal_is_blocked() 147 (schedctl_sigblock(t) && !sigismember(&cantmask, sig))); in signal_is_blocked() 162 sig_discardable(proc_t *p, int sig) in sig_discardable() argument 167 (sigismember(&p->p_ignore, sig) && /* signal is ignored */ in sig_discardable() 169 !tracing(p, sig) && /* and no /proc tracing */ in sig_discardable() [all …]
|
/illumos-gate/usr/src/lib/libc/port/threads/ |
H A D | sigaction.c | 75 call_user_handler(int sig, siginfo_t *sip, ucontext_t *ucp) in call_user_handler() argument 94 self->ul_td_evbuf.eventdata = (void *)(intptr_t)sig; in call_user_handler() 118 sap = &udp->siguaction[sig].sig_uaction; in call_user_handler() 121 ((sig == SIGPROF && sip->si_code == PROF_SIG) || in call_user_handler() 122 (sig == SIGEMT && sip->si_code == EMT_CPCOVF)))) { in call_user_handler() 126 rwlock_t *rwlp = &udp->siguaction[sig].sig_lock; in call_user_handler() 129 if ((sig == SIGCANCEL || sig == SIGAIOCANCEL) && in call_user_handler() 161 (void) sigaddset(&uact.sa_mask, sig); in call_user_handler() 173 if (sig == SIGCANCEL) { in call_user_handler() 189 if (sig == SIGAIOCANCEL) { in call_user_handler() [all …]
|
/illumos-gate/usr/src/contrib/ast/src/lib/libast/string/ |
H A D | fmtsignal.c | 35 fmtsignal(register int sig) in fmtsignal() argument 40 if (sig >= 0) in fmtsignal() 42 if (sig <= sig_info.sigmax) in fmtsignal() 43 buf = sig_info.text[sig]; in fmtsignal() 47 sfsprintf(buf, z, "Signal %d", sig); in fmtsignal() 52 sig = -sig; in fmtsignal() 53 if (sig <= sig_info.sigmax) in fmtsignal() 54 buf = sig_info.name[sig]; in fmtsignal() 58 sfsprintf(buf, z, "%d", sig); in fmtsignal()
|
/illumos-gate/usr/src/boot/sys/sys/ |
H A D | _sigset.h | 46 #define _SIG_IDX(sig) ((sig) - 1) argument 47 #define _SIG_WORD(sig) (_SIG_IDX(sig) >> 5) argument 48 #define _SIG_BIT(sig) (1 << (_SIG_IDX(sig) & 31)) argument 49 #define _SIG_VALID(sig) ((sig) <= _SIG_MAXSIG && (sig) > 0) argument
|
/illumos-gate/usr/src/cmd/syseventd/daemons/syseventd/ |
H A D | sysevent_signal.c | 38 sig_stub(int sig, siginfo_t *sip, void *ucp) in sig_stub() argument 40 sig_handlers[sig](sig, sip, (ucontext_t *)ucp, sig_data[sig]); in sig_stub() 44 se_signal_sethandler(int sig, se_signal_f *handler, void *data) in se_signal_sethandler() argument 49 sig_handlers[sig] = handler; in se_signal_sethandler() 50 sig_data[sig] = data; in se_signal_sethandler() 65 if ((status = sigaction(sig, &act, NULL)) == 0) in se_signal_sethandler() 66 (void) se_signal_unblock(sig); in se_signal_sethandler() 72 se_signal_unblock(int sig) in se_signal_unblock() argument 77 (void) sigaddset(&set, sig); in se_signal_unblock()
|
/illumos-gate/usr/src/contrib/ast/src/lib/libast/misc/ |
H A D | sigcrit.c | 35 int sig; member 77 interrupt(int sig) in interrupt() argument 79 signal(sig, interrupt); in interrupt() 80 hold |= sigmask(sig); in interrupt() 123 sigaddset(&nmask, signals[i].sig); in sigcritical() 130 mask |= sigmask(signals[i].sig); in sigcritical() 135 if ((op & signals[i].op) && (handler[i] = signal(signals[i].sig, interrupt)) == SIG_IGN) in sigcritical() 137 signal(signals[i].sig, handler[i]); in sigcritical() 138 hold &= ~sigmask(signals[i].sig); in sigcritical() 152 if (sigismember(&nmask, signals[i].sig)) in sigcritical() [all …]
|
H A D | signal.c | 75 signal(int sig, Sig_handler_t fun) in signal() argument 84 if (sig < 0) in signal() 86 sig = -sig; in signal() 92 flags = sig & ~SIGNO_MASK; in signal() 93 sig &= SIGNO_MASK; in signal() 98 switch (sig) in signal() 125 if (sigaction(sig, &na, &oa)) in signal() 128 sigunblock(sig); in signal()
|
/illumos-gate/usr/src/ucblib/libucb/sparc/sys/ |
H A D | signal.c | 99 _sigvechandler(int sig, siginfo_t *sip, ucontext_t *ucp) in _sigvechandler() argument 101 ucbsigvechandler(sig, sip, ucp); in _sigvechandler() 106 ucbsigvechandler(int sig, siginfo_t *sip, ucontext_t *ucp) in ucbsigvechandler() argument 119 if (sig == SIGFPE && sip != NULL && SI_FROMKERNEL(sip) && in ucbsigvechandler() 153 sc.sc_spbuf[0] = (char *)(uintptr_t)sig; in ucbsigvechandler() 190 switch (sig) { in ucbsigvechandler() 272 (*_siguhandler[sig])(sig, code, &sc, addr); in ucbsigvechandler() 309 if (sig == SIGFPE) { in ucbsigvechandler() 338 int sig; in __sigcleanup() local 346 sig = (int)(uintptr_t)scp->sc_spbuf[0]; in __sigcleanup() [all …]
|
/illumos-gate/usr/src/ucblib/libucb/i386/sys/ |
H A D | signal.c | 86 _sigvechandler(int sig, siginfo_t *sip, ucontext_t *ucp) in _sigvechandler() argument 89 ucbsigvechandler(sig, sip, ucp); in _sigvechandler() 93 ucbsigvechandler(int sig, siginfo_t *sip, ucontext_t *ucp) in ucbsigvechandler() argument 128 switch (sig) { in ucbsigvechandler() 168 (*_siguhandler[sig])(sig, code, &sc, addr); in ucbsigvechandler() 250 _sigvec(int sig, struct sigvec *nvec, struct sigvec *ovec) in _sigvec() argument 252 return (ucbsigvec(sig, nvec, ovec)); in _sigvec() 256 ucbsigvec(int sig, struct sigvec *nvec, struct sigvec *ovec) in ucbsigvec() argument 263 if (sig <= 0 || sig >= NSIG) { in ucbsigvec() 273 ohandler = _siguhandler[sig]; in ucbsigvec() [all …]
|
/illumos-gate/usr/src/cmd/csh/i386/ |
H A D | signal.c | 65 sigvechandler(int sig, siginfo_t *sip, ucontext_t *ucp) in sigvechandler() argument 93 if (sig == SIGILL || sig == SIGFPE || sig == SIGSEGV || sig == SIGBUS) in sigvechandler() 99 (*_siguhandler[sig])(sig, code, &sc, addr); in sigvechandler() 157 sigvec(int sig, struct sigvec *nvec, struct sigvec *ovec) in sigvec() argument 164 if (sig <= 0 || sig >= NSIG) { in sigvec() 169 ohandler = _siguhandler[sig]; in sigvec() 172 _sigaction(sig, (struct sigaction *)0, &nact); in sigvec() 174 _siguhandler[sig] = nhandler; in sigvec() 194 if (_sigaction(sig, nactp, &oact) < 0) { in sigvec() 195 _siguhandler[sig] = ohandler; in sigvec()
|
/illumos-gate/usr/src/cmd/sendmail/include/sm/ |
H A D | signal.h | 48 #define CHECK_CRITICAL(sig) \ argument 51 if (InCriticalSection > 0 && (sig) != 0) \ 53 pend_signal((sig)); \ 67 # define FIX_SYSV_SIGNAL(sig, handler) \ argument 69 if ((sig) != 0) \ 70 (void) sm_signal((sig), (handler)); \ 73 # define FIX_SYSV_SIGNAL(sig, handler) { /* EMPTY */ } argument
|
/illumos-gate/usr/src/cmd/csh/sparc/ |
H A D | signal.c | 65 sigvechandler(int sig, siginfo_t *sip, ucontext_t *ucp) in sigvechandler() argument 105 if (sig == SIGILL || sig == SIGFPE || sig == SIGSEGV || sig == SIGBUS) in sigvechandler() 111 (*_siguhandler[sig])(sig, code, &sc, addr); in sigvechandler() 181 sigvec(int sig, struct sigvec *nvec, struct sigvec *ovec) in sigvec() argument 188 if (sig <= 0 || sig >= NSIG) { in sigvec() 193 ohandler = _siguhandler[sig]; in sigvec() 196 _sigaction(sig, (struct sigaction *)0, &nact); in sigvec() 198 _siguhandler[sig] = nhandler; in sigvec() 218 if (_sigaction(sig, nactp, &oact) < 0) { in sigvec() 219 _siguhandler[sig] = ohandler; in sigvec()
|