1*7730d1d9Sderaadt /* $OpenBSD: signal.h,v 1.12 2016/05/10 18:39:44 deraadt Exp $ */ 29c0b8818Smickey 39c0b8818Smickey /* 49c0b8818Smickey * Copyright (c) 1994, The University of Utah and 59c0b8818Smickey * the Computer Systems Laboratory at the University of Utah (CSL). 69c0b8818Smickey * All rights reserved. 79c0b8818Smickey * 89c0b8818Smickey * Permission to use, copy, modify and distribute this software is hereby 99c0b8818Smickey * granted provided that (1) source code retains these copyright, permission, 109c0b8818Smickey * and disclaimer notices, and (2) redistributions including binaries 119c0b8818Smickey * reproduce the notices in supporting documentation, and (3) all advertising 129c0b8818Smickey * materials mentioning features or use of this software display the following 139c0b8818Smickey * acknowledgement: ``This product includes software developed by the 149c0b8818Smickey * Computer Systems Laboratory at the University of Utah.'' 159c0b8818Smickey * 169c0b8818Smickey * THE UNIVERSITY OF UTAH AND CSL ALLOW FREE USE OF THIS SOFTWARE IN ITS "AS 179c0b8818Smickey * IS" CONDITION. THE UNIVERSITY OF UTAH AND CSL DISCLAIM ANY LIABILITY OF 189c0b8818Smickey * ANY KIND FOR ANY DAMAGES WHATSOEVER RESULTING FROM THE USE OF THIS SOFTWARE. 199c0b8818Smickey * 209c0b8818Smickey * CSL requests users of this software to return to csl-dist@cs.utah.edu any 219c0b8818Smickey * improvements that they make and grant CSL redistribution rights. 229c0b8818Smickey * 239c0b8818Smickey * Utah $Hdr: signal.h 1.3 94/12/16$ 249c0b8818Smickey */ 259c0b8818Smickey 262fa72412Spirofti #ifndef _MACHINE_SIGNAL_H_ 272fa72412Spirofti #define _MACHINE_SIGNAL_H_ 2856020549Smickey 297c2ef5d9Smillert #include <sys/cdefs.h> 307c2ef5d9Smillert 319c0b8818Smickey /* 329c0b8818Smickey * Machine-dependent signal definitions 339c0b8818Smickey */ 349c0b8818Smickey 359c0b8818Smickey typedef int sig_atomic_t; 369c0b8818Smickey 3793b1f12aSderaadt #ifdef _KERNEL 3856020549Smickey #include <machine/trap.h> 399fa6b648Smillert #endif 409c0b8818Smickey 419fa6b648Smillert #if __BSD_VISIBLE || __XPG_VISIBLE >= 420 429c0b8818Smickey /* 439c0b8818Smickey * Information pushed on stack when a signal is delivered. 449c0b8818Smickey * This is used by the kernel to restore state following 459c0b8818Smickey * execution of the signal handler. It is also made available 469c0b8818Smickey * to the handler to allow it to restore state properly if 479c0b8818Smickey * a non-standard exit is performed. 489c0b8818Smickey */ 499c0b8818Smickey struct sigcontext { 501eaa59e7Sguenther unsigned long __sc_unused; 51*7730d1d9Sderaadt long sc_mask; /* signal mask to restore XXX should be int */ 52fe9efbf0Sderaadt unsigned long sc_ps; /* psl to restore */ 53fe9efbf0Sderaadt unsigned long sc_fp; /* fp to restore */ 54fe9efbf0Sderaadt unsigned long sc_pcoqh; /* pc offset queue (head) to restore */ 55fe9efbf0Sderaadt unsigned long sc_pcoqt; /* pc offset queue (tail) to restore */ 56fe9efbf0Sderaadt unsigned long sc_resv[2]; 57fe9efbf0Sderaadt unsigned long sc_regs[32]; 58fe9efbf0Sderaadt unsigned long sc_fpregs[64]; 59*7730d1d9Sderaadt long sc_cookie; 609c0b8818Smickey }; 619fa6b648Smillert #endif /* __BSD_VISIBLE || __XPG_VISIBLE >= 420 */ 622fa72412Spirofti #endif /* !_MACHINE_SIGNAL_H_ */ 63