1 /* $OpenBSD: signal.h,v 1.8 2011/03/23 16:54:35 pirofti Exp $ */ 2 3 /* 4 * Copyright (c) 1994, The University of Utah and 5 * the Computer Systems Laboratory at the University of Utah (CSL). 6 * All rights reserved. 7 * 8 * Permission to use, copy, modify and distribute this software is hereby 9 * granted provided that (1) source code retains these copyright, permission, 10 * and disclaimer notices, and (2) redistributions including binaries 11 * reproduce the notices in supporting documentation, and (3) all advertising 12 * materials mentioning features or use of this software display the following 13 * acknowledgement: ``This product includes software developed by the 14 * Computer Systems Laboratory at the University of Utah.'' 15 * 16 * THE UNIVERSITY OF UTAH AND CSL ALLOW FREE USE OF THIS SOFTWARE IN ITS "AS 17 * IS" CONDITION. THE UNIVERSITY OF UTAH AND CSL DISCLAIM ANY LIABILITY OF 18 * ANY KIND FOR ANY DAMAGES WHATSOEVER RESULTING FROM THE USE OF THIS SOFTWARE. 19 * 20 * CSL requests users of this software to return to csl-dist@cs.utah.edu any 21 * improvements that they make and grant CSL redistribution rights. 22 * 23 * Utah $Hdr: signal.h 1.3 94/12/16$ 24 */ 25 26 #ifndef _MACHINE_SIGNAL_H_ 27 #define _MACHINE_SIGNAL_H_ 28 29 #include <sys/cdefs.h> 30 31 /* 32 * Machine-dependent signal definitions 33 */ 34 35 typedef int sig_atomic_t; 36 37 #if __BSD_VISIBLE 38 #include <machine/trap.h> 39 #endif 40 41 #if __BSD_VISIBLE || __XPG_VISIBLE >= 420 42 /* 43 * Information pushed on stack when a signal is delivered. 44 * This is used by the kernel to restore state following 45 * execution of the signal handler. It is also made available 46 * to the handler to allow it to restore state properly if 47 * a non-standard exit is performed. 48 */ 49 struct sigcontext { 50 unsigned sc_onstack; /* sigstack state to restore */ 51 unsigned sc_mask; /* signal mask to restore */ 52 unsigned sc_ps; /* psl to restore */ 53 unsigned sc_fp; /* fp to restore */ 54 unsigned sc_pcoqh; /* pc offset queue (head) to restore */ 55 unsigned sc_pcoqt; /* pc offset queue (tail) to restore */ 56 unsigned sc_resv[2]; 57 unsigned sc_regs[32]; 58 unsigned sc_fpregs[64]; 59 }; 60 #endif /* __BSD_VISIBLE || __XPG_VISIBLE >= 420 */ 61 #endif /* !_MACHINE_SIGNAL_H_ */ 62