ibcs2_signal.h revision 11397
111394Sswallace/* $NetBSD: ibcs2_signal.h,v 1.7 1995/08/14 02:26:01 mycroft Exp $ */ 211394Sswallace 311394Sswallace/* 411394Sswallace * Copyright (c) 1994, 1995 Scott Bartram 511394Sswallace * All rights reserved. 611394Sswallace * 711394Sswallace * Redistribution and use in source and binary forms, with or without 811394Sswallace * modification, are permitted provided that the following conditions 911394Sswallace * are met: 1011394Sswallace * 1. Redistributions of source code must retain the above copyright 1111394Sswallace * notice, this list of conditions and the following disclaimer. 1211394Sswallace * 2. Redistributions in binary form must reproduce the above copyright 1311394Sswallace * notice, this list of conditions and the following disclaimer in the 1411394Sswallace * documentation and/or other materials provided with the distribution. 1511394Sswallace * 3. All advertising materials mentioning features or use of this software 1611394Sswallace * must display the following acknowledgement: 1711394Sswallace * This product includes software developed by Scott Bartram. 1811394Sswallace * 4. The name of the author may not be used to endorse or promote products 1911394Sswallace * derived from this software without specific prior written permission 2011394Sswallace * 2111394Sswallace * THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR 2211394Sswallace * IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES 2311394Sswallace * OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. 2411394Sswallace * IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, 2511394Sswallace * INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT 2611394Sswallace * NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, 2711394Sswallace * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY 2811394Sswallace * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT 2911394Sswallace * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF 3011394Sswallace * THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 3111394Sswallace */ 3211394Sswallace 3311394Sswallace#ifndef _IBCS2_SIGNAL_H 3411394Sswallace#define _IBCS2_SIGNAL_H 3511394Sswallace 3611394Sswallace#define IBCS2_SIGHUP 1 3711394Sswallace#define IBCS2_SIGINT 2 3811394Sswallace#define IBCS2_SIGQUIT 3 3911394Sswallace#define IBCS2_SIGILL 4 4011394Sswallace#define IBCS2_SIGTRAP 5 4111394Sswallace#define IBCS2_SIGIOT 6 4211394Sswallace#define IBCS2_SIGABRT 6 4311394Sswallace#define IBCS2_SIGEMT 7 4411394Sswallace#define IBCS2_SIGFPE 8 4511394Sswallace#define IBCS2_SIGKILL 9 4611394Sswallace#define IBCS2_SIGBUS 10 4711394Sswallace#define IBCS2_SIGSEGV 11 4811394Sswallace#define IBCS2_SIGSYS 12 4911394Sswallace#define IBCS2_SIGPIPE 13 5011394Sswallace#define IBCS2_SIGALRM 14 5111394Sswallace#define IBCS2_SIGTERM 15 5211394Sswallace#define IBCS2_SIGUSR1 16 5311394Sswallace#define IBCS2_SIGUSR2 17 5411394Sswallace#define IBCS2_SIGCLD 18 5511394Sswallace#define IBCS2_SIGPWR 19 5611394Sswallace#define IBCS2_SIGWINCH 20 5711394Sswallace#define IBCS2_SIGPOLL 22 5811394Sswallace#define IBCS2_NSIG 32 5911394Sswallace 6011394Sswallace/* 6111394Sswallace * SCO-specific 6211394Sswallace */ 6311394Sswallace#define IBCS2_SIGSTOP 23 6411394Sswallace#define IBCS2_SIGTSTP 24 6511394Sswallace#define IBCS2_SIGCONT 25 6611394Sswallace#define IBCS2_SIGTTIN 26 6711394Sswallace#define IBCS2_SIGTTOU 27 6811394Sswallace#define IBCS2_SIGVTALRM 28 6911394Sswallace#define IBCS2_SIGPROF 29 7011394Sswallace 7111394Sswallace#define IBCS2_SIGNO_MASK 0x00FF 7211394Sswallace#define IBCS2_SIGNAL_MASK 0x0000 7311394Sswallace#define IBCS2_SIGSET_MASK 0x0100 7411394Sswallace#define IBCS2_SIGHOLD_MASK 0x0200 7511394Sswallace#define IBCS2_SIGRELSE_MASK 0x0400 7611394Sswallace#define IBCS2_SIGIGNORE_MASK 0x0800 7711394Sswallace#define IBCS2_SIGPAUSE_MASK 0x1000 7811394Sswallace 7911394Sswallace#define IBCS2_SIGNO(x) ((x) & IBCS2_SIGNO_MASK) 8011394Sswallace#define IBCS2_SIGCALL(x) ((x) & ~IBCS2_SIGNO_MASK) 8111394Sswallace 8211394Sswallacetypedef long ibcs2_sigset_t; 8311394Sswallacetypedef void (*ibcs2_sig_t) __P((int)); 8411394Sswallace 8511394Sswallacestruct ibcs2_sigaction { 8611394Sswallace ibcs2_sig_t sa_handler; 8711394Sswallace ibcs2_sigset_t sa_mask; 8811394Sswallace int sa_flags; 8911394Sswallace}; 9011394Sswallace 9111397Sswallace#define IBCS2_SIG_DFL (ibcs2_sig_t)(0) 9211397Sswallace#define IBCS2_SIG_ERR (ibcs2_sig_t)(-1) 9311397Sswallace#define IBCS2_SIG_IGN (ibcs2_sig_t)(1) 9411397Sswallace#define IBCS2_SIG_HOLD (ibcs2_sig_t)(2) 9511397Sswallace 9611397Sswallace#define IBCS2_SIG_SETMASK 0 9711397Sswallace#define IBCS2_SIG_BLOCK 1 9811397Sswallace#define IBCS2_SIG_UNBLOCK 2 9911397Sswallace 10011394Sswallace/* sa_flags */ 10111394Sswallace#define IBCS2_SA_NOCLDSTOP 1 10211394Sswallace 10311394Sswallaceextern int bsd_to_ibcs2_sig[]; 10411394Sswallace 10511394Sswallace#endif /* _IBCS2_SIGNAL_H */ 106