ibcs2_signal.h revision 11395
1/* $NetBSD: ibcs2_signal.h,v 1.7 1995/08/14 02:26:01 mycroft Exp $ */ 2 3/* 4 * Copyright (c) 1994, 1995 Scott Bartram 5 * All rights reserved. 6 * 7 * Redistribution and use in source and binary forms, with or without 8 * modification, are permitted provided that the following conditions 9 * are met: 10 * 1. Redistributions of source code must retain the above copyright 11 * notice, this list of conditions and the following disclaimer. 12 * 2. Redistributions in binary form must reproduce the above copyright 13 * notice, this list of conditions and the following disclaimer in the 14 * documentation and/or other materials provided with the distribution. 15 * 3. All advertising materials mentioning features or use of this software 16 * must display the following acknowledgement: 17 * This product includes software developed by Scott Bartram. 18 * 4. The name of the author may not be used to endorse or promote products 19 * derived from this software without specific prior written permission 20 * 21 * THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR 22 * IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES 23 * OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. 24 * IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, 25 * INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT 26 * NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, 27 * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY 28 * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT 29 * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF 30 * THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 31 */ 32 33#ifndef _IBCS2_SIGNAL_H 34#define _IBCS2_SIGNAL_H 35 36#define IBCS2_SIGHUP 1 37#define IBCS2_SIGINT 2 38#define IBCS2_SIGQUIT 3 39#define IBCS2_SIGILL 4 40#define IBCS2_SIGTRAP 5 41#define IBCS2_SIGIOT 6 42#define IBCS2_SIGABRT 6 43#define IBCS2_SIGEMT 7 44#define IBCS2_SIGFPE 8 45#define IBCS2_SIGKILL 9 46#define IBCS2_SIGBUS 10 47#define IBCS2_SIGSEGV 11 48#define IBCS2_SIGSYS 12 49#define IBCS2_SIGPIPE 13 50#define IBCS2_SIGALRM 14 51#define IBCS2_SIGTERM 15 52#define IBCS2_SIGUSR1 16 53#define IBCS2_SIGUSR2 17 54#define IBCS2_SIGCLD 18 55#define IBCS2_SIGPWR 19 56#define IBCS2_SIGWINCH 20 57#define IBCS2_SIGPOLL 22 58#define IBCS2_NSIG 32 59 60/* 61 * SCO-specific 62 */ 63#define IBCS2_SIGSTOP 23 64#define IBCS2_SIGTSTP 24 65#define IBCS2_SIGCONT 25 66#define IBCS2_SIGTTIN 26 67#define IBCS2_SIGTTOU 27 68#define IBCS2_SIGVTALRM 28 69#define IBCS2_SIGPROF 29 70 71#define IBCS2_SIGNO_MASK 0x00FF 72#define IBCS2_SIGNAL_MASK 0x0000 73#define IBCS2_SIGSET_MASK 0x0100 74#define IBCS2_SIGHOLD_MASK 0x0200 75#define IBCS2_SIGRELSE_MASK 0x0400 76#define IBCS2_SIGIGNORE_MASK 0x0800 77#define IBCS2_SIGPAUSE_MASK 0x1000 78 79#define IBCS2_SIGNO(x) ((x) & IBCS2_SIGNO_MASK) 80#define IBCS2_SIGCALL(x) ((x) & ~IBCS2_SIGNO_MASK) 81 82#define IBCS2_SIG_DFL (void(*)())0 83#define IBCS2_SIG_ERR (void(*)())-1 84#define IBCS2_SIG_IGN (void(*)())1 85#define IBCS2_SIG_HOLD (void(*)())2 86 87#define IBCS2_SIG_SETMASK 0 88#define IBCS2_SIG_BLOCK 1 89#define IBCS2_SIG_UNBLOCK 2 90 91typedef long ibcs2_sigset_t; 92typedef void (*ibcs2_sig_t) __P((int)); 93 94struct ibcs2_sigaction { 95 ibcs2_sig_t sa_handler; 96 ibcs2_sigset_t sa_mask; 97 int sa_flags; 98}; 99 100/* sa_flags */ 101#define IBCS2_SA_NOCLDSTOP 1 102 103extern int bsd_to_ibcs2_sig[]; 104 105#endif /* _IBCS2_SIGNAL_H */ 106