signal.h revision 83b9d3a082a6e5281b5b5fc45337270d915af39d
1/* 2 * Copyright (C) 2004-2006 Atmel Corporation 3 * 4 * This program is free software; you can redistribute it and/or modify 5 * it under the terms of the GNU General Public License version 2 as 6 * published by the Free Software Foundation. 7 */ 8#ifndef _UAPI__ASM_AVR32_SIGNAL_H 9#define _UAPI__ASM_AVR32_SIGNAL_H 10 11#include <linux/types.h> 12 13/* Avoid too many header ordering problems. */ 14struct siginfo; 15 16#ifndef __KERNEL__ 17/* Here we must cater to libcs that poke about in kernel headers. */ 18 19#define NSIG 32 20typedef unsigned long sigset_t; 21 22#endif /* __KERNEL__ */ 23 24#define SIGHUP 1 25#define SIGINT 2 26#define SIGQUIT 3 27#define SIGILL 4 28#define SIGTRAP 5 29#define SIGABRT 6 30#define SIGIOT 6 31#define SIGBUS 7 32#define SIGFPE 8 33#define SIGKILL 9 34#define SIGUSR1 10 35#define SIGSEGV 11 36#define SIGUSR2 12 37#define SIGPIPE 13 38#define SIGALRM 14 39#define SIGTERM 15 40#define SIGSTKFLT 16 41#define SIGCHLD 17 42#define SIGCONT 18 43#define SIGSTOP 19 44#define SIGTSTP 20 45#define SIGTTIN 21 46#define SIGTTOU 22 47#define SIGURG 23 48#define SIGXCPU 24 49#define SIGXFSZ 25 50#define SIGVTALRM 26 51#define SIGPROF 27 52#define SIGWINCH 28 53#define SIGIO 29 54#define SIGPOLL SIGIO 55/* 56#define SIGLOST 29 57*/ 58#define SIGPWR 30 59#define SIGSYS 31 60#define SIGUNUSED 31 61 62/* These should not be considered constants from userland. */ 63#define SIGRTMIN 32 64#define SIGRTMAX (_NSIG-1) 65 66/* 67 * SA_FLAGS values: 68 * 69 * SA_NOCLDSTOP flag to turn off SIGCHLD when children stop. 70 * SA_NOCLDWAIT flag on SIGCHLD to inhibit zombies. 71 * SA_SIGINFO deliver the signal with SIGINFO structs 72 * SA_ONSTACK indicates that a registered stack_t will be used. 73 * SA_RESTART flag to get restarting signals (which were the default long ago) 74 * SA_NODEFER prevents the current signal from being masked in the handler. 75 * SA_RESETHAND clears the handler when the signal is delivered. 76 * 77 * SA_ONESHOT and SA_NOMASK are the historical Linux names for the Single 78 * Unix names RESETHAND and NODEFER respectively. 79 */ 80#define SA_NOCLDSTOP 0x00000001 81#define SA_NOCLDWAIT 0x00000002 82#define SA_SIGINFO 0x00000004 83#define SA_RESTORER 0x04000000 84#define SA_ONSTACK 0x08000000 85#define SA_RESTART 0x10000000 86#define SA_NODEFER 0x40000000 87#define SA_RESETHAND 0x80000000 88 89#define SA_NOMASK SA_NODEFER 90#define SA_ONESHOT SA_RESETHAND 91 92/* 93 * sigaltstack controls 94 */ 95#define SS_ONSTACK 1 96#define SS_DISABLE 2 97 98#define MINSIGSTKSZ 2048 99#define SIGSTKSZ 8192 100 101#include <asm-generic/signal-defs.h> 102 103#ifndef __KERNEL__ 104/* Here we must cater to libcs that poke about in kernel headers. */ 105 106struct sigaction { 107 union { 108 __sighandler_t _sa_handler; 109 void (*_sa_sigaction)(int, struct siginfo *, void *); 110 } _u; 111 sigset_t sa_mask; 112 unsigned long sa_flags; 113 void (*sa_restorer)(void); 114}; 115 116#define sa_handler _u._sa_handler 117#define sa_sigaction _u._sa_sigaction 118 119#endif /* __KERNEL__ */ 120 121typedef struct sigaltstack { 122 void __user *ss_sp; 123 int ss_flags; 124 size_t ss_size; 125} stack_t; 126 127 128#endif /* _UAPI__ASM_AVR32_SIGNAL_H */ 129