Changeset View
Changeset View
Standalone View
Standalone View
sys/kern/kern_sig.c
Show First 20 Lines • Show All 923 Lines • ▼ Show 20 Lines | |||||
osigreturn(struct thread *td, struct osigreturn_args *uap) | osigreturn(struct thread *td, struct osigreturn_args *uap) | ||||
{ | { | ||||
return (nosys(td, (struct nosys_args *)uap)); | return (nosys(td, (struct nosys_args *)uap)); | ||||
} | } | ||||
#endif | #endif | ||||
#endif /* COMPAT_43 */ | #endif /* COMPAT_43 */ | ||||
/* Would this signal be fatal to the current process, if it were caught ? */ | |||||
bool | |||||
sig_isfatal(struct proc *p, int sig) | |||||
{ | |||||
intptr_t act; | |||||
int prop; | |||||
mtx_assert(&p->p_sigacts->ps_mtx, MA_OWNED); | |||||
act = (intptr_t)p->p_sigacts->ps_sigact[_SIG_IDX(sig)]; | |||||
if ((intptr_t)SIG_DFL == act) { | |||||
prop = sigprop(sig); | |||||
return (0 != (prop & (SIGPROP_KILL | SIGPROP_CORE))); | |||||
} else { | |||||
return (false); | |||||
} | |||||
} | |||||
/* | /* | ||||
* Initialize signal state for process 0; | * Initialize signal state for process 0; | ||||
* set to ignore signals that are ignored by default. | * set to ignore signals that are ignored by default. | ||||
*/ | */ | ||||
void | void | ||||
siginit(struct proc *p) | siginit(struct proc *p) | ||||
{ | { | ||||
int i; | int i; | ||||
▲ Show 20 Lines • Show All 2,916 Lines • Show Last 20 Lines |