signalvar.h (95759) | signalvar.h (95883) |
---|---|
1/* 2 * Copyright (c) 1991, 1993 3 * The Regents of the University of California. All rights reserved. 4 * 5 * Redistribution and use in source and binary forms, with or without 6 * modification, are permitted provided that the following conditions 7 * are met: 8 * 1. Redistributions of source code must retain the above copyright --- 17 unchanged lines hidden (view full) --- 26 * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS 27 * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) 28 * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT 29 * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY 30 * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF 31 * SUCH DAMAGE. 32 * 33 * @(#)signalvar.h 8.6 (Berkeley) 2/19/95 | 1/* 2 * Copyright (c) 1991, 1993 3 * The Regents of the University of California. All rights reserved. 4 * 5 * Redistribution and use in source and binary forms, with or without 6 * modification, are permitted provided that the following conditions 7 * are met: 8 * 1. Redistributions of source code must retain the above copyright --- 17 unchanged lines hidden (view full) --- 26 * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS 27 * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) 28 * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT 29 * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY 30 * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF 31 * SUCH DAMAGE. 32 * 33 * @(#)signalvar.h 8.6 (Berkeley) 2/19/95 |
34 * $FreeBSD: head/sys/sys/signalvar.h 95759 2002-04-30 01:54:54Z tanimura $ | 34 * $FreeBSD: head/sys/sys/signalvar.h 95883 2002-05-01 20:44:46Z alfred $ |
35 */ 36 37#ifndef _SYS_SIGNALVAR_H_ 38#define _SYS_SIGNALVAR_H_ 39 40#include <sys/signal.h> 41 42/* --- 168 unchanged lines hidden (view full) --- 211 } 212 return (1); 213} 214 215struct pgrp; 216struct thread; 217struct proc; 218struct sigio; | 35 */ 36 37#ifndef _SYS_SIGNALVAR_H_ 38#define _SYS_SIGNALVAR_H_ 39 40#include <sys/signal.h> 41 42/* --- 168 unchanged lines hidden (view full) --- 211 } 212 return (1); 213} 214 215struct pgrp; 216struct thread; 217struct proc; 218struct sigio; |
219struct sx; | 219struct mtx; |
220 221extern int sugid_coredump; /* Sysctl variable kern.sugid_coredump */ | 220 221extern int sugid_coredump; /* Sysctl variable kern.sugid_coredump */ |
222extern struct sx sigio_lock; | 222extern struct mtx sigio_lock; |
223 224/* 225 * Lock the pointers for a sigio object in the underlying objects of 226 * a file descriptor. 227 */ | 223 224/* 225 * Lock the pointers for a sigio object in the underlying objects of 226 * a file descriptor. 227 */ |
228#define SIGIO_SLOCK() sx_slock(&sigio_lock) 229#define SIGIO_XLOCK() sx_xlock(&sigio_lock) 230#define SIGIO_SUNLOCK() sx_sunlock(&sigio_lock) 231#define SIGIO_XUNLOCK() sx_xunlock(&sigio_lock) 232#define SIGIO_ASSERT(what) sx_assert(&sigio_lock, what) | 228#define SIGIO_LOCK() mtx_lock(&sigio_lock) 229#define SIGIO_TRYLOCK() mtx_trylock(&sigio_lock) 230#define SIGIO_UNLOCK() mtx_unlock(&sigio_lock) 231#define SIGIO_LOCKED() mtx_owned(&sigio_lock) 232#define SIGIO_ASSERT(type) mtx_assert(&sigio_lock, type) |
233 234/* 235 * Machine-independent functions: 236 */ 237int CURSIG(struct proc *p); 238void execsigs(struct proc *p); 239void gsignal(int pgid, int sig); 240int issignal(struct proc *p); 241void killproc(struct proc *p, char *why); | 233 234/* 235 * Machine-independent functions: 236 */ 237int CURSIG(struct proc *p); 238void execsigs(struct proc *p); 239void gsignal(int pgid, int sig); 240int issignal(struct proc *p); 241void killproc(struct proc *p, char *why); |
242void pgsigio(struct sigio *, int signum, int checkctty); | 242void pgsigio(struct sigio **, int signum, int checkctty); |
243void pgsignal(struct pgrp *pgrp, int sig, int checkctty); 244void postsig(int sig); 245void psignal(struct proc *p, int sig); 246void sigexit(struct thread *td, int signum) __dead2; 247void siginit(struct proc *p); 248void signotify(struct proc *p); 249void trapsignal(struct proc *p, int sig, u_long code); 250 251/* 252 * Machine-dependent functions: 253 */ 254void sendsig(sig_t action, int sig, sigset_t *retmask, u_long code); 255 256#endif /* _KERNEL */ 257 258#endif /* !_SYS_SIGNALVAR_H_ */ | 243void pgsignal(struct pgrp *pgrp, int sig, int checkctty); 244void postsig(int sig); 245void psignal(struct proc *p, int sig); 246void sigexit(struct thread *td, int signum) __dead2; 247void siginit(struct proc *p); 248void signotify(struct proc *p); 249void trapsignal(struct proc *p, int sig, u_long code); 250 251/* 252 * Machine-dependent functions: 253 */ 254void sendsig(sig_t action, int sig, sigset_t *retmask, u_long code); 255 256#endif /* _KERNEL */ 257 258#endif /* !_SYS_SIGNALVAR_H_ */ |