110b3a979347d4aba7de19e8d33eb8b87fe2a11ddDavid Howells#ifndef _UAPI_M68K_SIGNAL_H 210b3a979347d4aba7de19e8d33eb8b87fe2a11ddDavid Howells#define _UAPI_M68K_SIGNAL_H 310b3a979347d4aba7de19e8d33eb8b87fe2a11ddDavid Howells 410b3a979347d4aba7de19e8d33eb8b87fe2a11ddDavid Howells#include <linux/types.h> 510b3a979347d4aba7de19e8d33eb8b87fe2a11ddDavid Howells 610b3a979347d4aba7de19e8d33eb8b87fe2a11ddDavid Howells/* Avoid too many header ordering problems. */ 710b3a979347d4aba7de19e8d33eb8b87fe2a11ddDavid Howellsstruct siginfo; 810b3a979347d4aba7de19e8d33eb8b87fe2a11ddDavid Howells 910b3a979347d4aba7de19e8d33eb8b87fe2a11ddDavid Howells#ifndef __KERNEL__ 1010b3a979347d4aba7de19e8d33eb8b87fe2a11ddDavid Howells/* Here we must cater to libcs that poke about in kernel headers. */ 1110b3a979347d4aba7de19e8d33eb8b87fe2a11ddDavid Howells 1210b3a979347d4aba7de19e8d33eb8b87fe2a11ddDavid Howells#define NSIG 32 1310b3a979347d4aba7de19e8d33eb8b87fe2a11ddDavid Howellstypedef unsigned long sigset_t; 1410b3a979347d4aba7de19e8d33eb8b87fe2a11ddDavid Howells 1510b3a979347d4aba7de19e8d33eb8b87fe2a11ddDavid Howells#endif /* __KERNEL__ */ 1610b3a979347d4aba7de19e8d33eb8b87fe2a11ddDavid Howells 1710b3a979347d4aba7de19e8d33eb8b87fe2a11ddDavid Howells#define SIGHUP 1 1810b3a979347d4aba7de19e8d33eb8b87fe2a11ddDavid Howells#define SIGINT 2 1910b3a979347d4aba7de19e8d33eb8b87fe2a11ddDavid Howells#define SIGQUIT 3 2010b3a979347d4aba7de19e8d33eb8b87fe2a11ddDavid Howells#define SIGILL 4 2110b3a979347d4aba7de19e8d33eb8b87fe2a11ddDavid Howells#define SIGTRAP 5 2210b3a979347d4aba7de19e8d33eb8b87fe2a11ddDavid Howells#define SIGABRT 6 2310b3a979347d4aba7de19e8d33eb8b87fe2a11ddDavid Howells#define SIGIOT 6 2410b3a979347d4aba7de19e8d33eb8b87fe2a11ddDavid Howells#define SIGBUS 7 2510b3a979347d4aba7de19e8d33eb8b87fe2a11ddDavid Howells#define SIGFPE 8 2610b3a979347d4aba7de19e8d33eb8b87fe2a11ddDavid Howells#define SIGKILL 9 2710b3a979347d4aba7de19e8d33eb8b87fe2a11ddDavid Howells#define SIGUSR1 10 2810b3a979347d4aba7de19e8d33eb8b87fe2a11ddDavid Howells#define SIGSEGV 11 2910b3a979347d4aba7de19e8d33eb8b87fe2a11ddDavid Howells#define SIGUSR2 12 3010b3a979347d4aba7de19e8d33eb8b87fe2a11ddDavid Howells#define SIGPIPE 13 3110b3a979347d4aba7de19e8d33eb8b87fe2a11ddDavid Howells#define SIGALRM 14 3210b3a979347d4aba7de19e8d33eb8b87fe2a11ddDavid Howells#define SIGTERM 15 3310b3a979347d4aba7de19e8d33eb8b87fe2a11ddDavid Howells#define SIGSTKFLT 16 3410b3a979347d4aba7de19e8d33eb8b87fe2a11ddDavid Howells#define SIGCHLD 17 3510b3a979347d4aba7de19e8d33eb8b87fe2a11ddDavid Howells#define SIGCONT 18 3610b3a979347d4aba7de19e8d33eb8b87fe2a11ddDavid Howells#define SIGSTOP 19 3710b3a979347d4aba7de19e8d33eb8b87fe2a11ddDavid Howells#define SIGTSTP 20 3810b3a979347d4aba7de19e8d33eb8b87fe2a11ddDavid Howells#define SIGTTIN 21 3910b3a979347d4aba7de19e8d33eb8b87fe2a11ddDavid Howells#define SIGTTOU 22 4010b3a979347d4aba7de19e8d33eb8b87fe2a11ddDavid Howells#define SIGURG 23 4110b3a979347d4aba7de19e8d33eb8b87fe2a11ddDavid Howells#define SIGXCPU 24 4210b3a979347d4aba7de19e8d33eb8b87fe2a11ddDavid Howells#define SIGXFSZ 25 4310b3a979347d4aba7de19e8d33eb8b87fe2a11ddDavid Howells#define SIGVTALRM 26 4410b3a979347d4aba7de19e8d33eb8b87fe2a11ddDavid Howells#define SIGPROF 27 4510b3a979347d4aba7de19e8d33eb8b87fe2a11ddDavid Howells#define SIGWINCH 28 4610b3a979347d4aba7de19e8d33eb8b87fe2a11ddDavid Howells#define SIGIO 29 4710b3a979347d4aba7de19e8d33eb8b87fe2a11ddDavid Howells#define SIGPOLL SIGIO 4810b3a979347d4aba7de19e8d33eb8b87fe2a11ddDavid Howells/* 4910b3a979347d4aba7de19e8d33eb8b87fe2a11ddDavid Howells#define SIGLOST 29 5010b3a979347d4aba7de19e8d33eb8b87fe2a11ddDavid Howells*/ 5110b3a979347d4aba7de19e8d33eb8b87fe2a11ddDavid Howells#define SIGPWR 30 5210b3a979347d4aba7de19e8d33eb8b87fe2a11ddDavid Howells#define SIGSYS 31 5310b3a979347d4aba7de19e8d33eb8b87fe2a11ddDavid Howells#define SIGUNUSED 31 5410b3a979347d4aba7de19e8d33eb8b87fe2a11ddDavid Howells 5510b3a979347d4aba7de19e8d33eb8b87fe2a11ddDavid Howells/* These should not be considered constants from userland. */ 5610b3a979347d4aba7de19e8d33eb8b87fe2a11ddDavid Howells#define SIGRTMIN 32 5710b3a979347d4aba7de19e8d33eb8b87fe2a11ddDavid Howells#define SIGRTMAX _NSIG 5810b3a979347d4aba7de19e8d33eb8b87fe2a11ddDavid Howells 5910b3a979347d4aba7de19e8d33eb8b87fe2a11ddDavid Howells/* 6010b3a979347d4aba7de19e8d33eb8b87fe2a11ddDavid Howells * SA_FLAGS values: 6110b3a979347d4aba7de19e8d33eb8b87fe2a11ddDavid Howells * 6210b3a979347d4aba7de19e8d33eb8b87fe2a11ddDavid Howells * SA_ONSTACK indicates that a registered stack_t will be used. 6310b3a979347d4aba7de19e8d33eb8b87fe2a11ddDavid Howells * SA_RESTART flag to get restarting signals (which were the default long ago) 6410b3a979347d4aba7de19e8d33eb8b87fe2a11ddDavid Howells * SA_NOCLDSTOP flag to turn off SIGCHLD when children stop. 6510b3a979347d4aba7de19e8d33eb8b87fe2a11ddDavid Howells * SA_RESETHAND clears the handler when the signal is delivered. 6610b3a979347d4aba7de19e8d33eb8b87fe2a11ddDavid Howells * SA_NOCLDWAIT flag on SIGCHLD to inhibit zombies. 6710b3a979347d4aba7de19e8d33eb8b87fe2a11ddDavid Howells * SA_NODEFER prevents the current signal from being masked in the handler. 6810b3a979347d4aba7de19e8d33eb8b87fe2a11ddDavid Howells * 6910b3a979347d4aba7de19e8d33eb8b87fe2a11ddDavid Howells * SA_ONESHOT and SA_NOMASK are the historical Linux names for the Single 7010b3a979347d4aba7de19e8d33eb8b87fe2a11ddDavid Howells * Unix names RESETHAND and NODEFER respectively. 7110b3a979347d4aba7de19e8d33eb8b87fe2a11ddDavid Howells */ 7210b3a979347d4aba7de19e8d33eb8b87fe2a11ddDavid Howells#define SA_NOCLDSTOP 0x00000001 7310b3a979347d4aba7de19e8d33eb8b87fe2a11ddDavid Howells#define SA_NOCLDWAIT 0x00000002 7410b3a979347d4aba7de19e8d33eb8b87fe2a11ddDavid Howells#define SA_SIGINFO 0x00000004 7510b3a979347d4aba7de19e8d33eb8b87fe2a11ddDavid Howells#define SA_ONSTACK 0x08000000 7610b3a979347d4aba7de19e8d33eb8b87fe2a11ddDavid Howells#define SA_RESTART 0x10000000 7710b3a979347d4aba7de19e8d33eb8b87fe2a11ddDavid Howells#define SA_NODEFER 0x40000000 7810b3a979347d4aba7de19e8d33eb8b87fe2a11ddDavid Howells#define SA_RESETHAND 0x80000000 7910b3a979347d4aba7de19e8d33eb8b87fe2a11ddDavid Howells 8010b3a979347d4aba7de19e8d33eb8b87fe2a11ddDavid Howells#define SA_NOMASK SA_NODEFER 8110b3a979347d4aba7de19e8d33eb8b87fe2a11ddDavid Howells#define SA_ONESHOT SA_RESETHAND 8210b3a979347d4aba7de19e8d33eb8b87fe2a11ddDavid Howells 8310b3a979347d4aba7de19e8d33eb8b87fe2a11ddDavid Howells#define MINSIGSTKSZ 2048 8410b3a979347d4aba7de19e8d33eb8b87fe2a11ddDavid Howells#define SIGSTKSZ 8192 8510b3a979347d4aba7de19e8d33eb8b87fe2a11ddDavid Howells 8610b3a979347d4aba7de19e8d33eb8b87fe2a11ddDavid Howells#include <asm-generic/signal-defs.h> 8710b3a979347d4aba7de19e8d33eb8b87fe2a11ddDavid Howells 8810b3a979347d4aba7de19e8d33eb8b87fe2a11ddDavid Howells#ifndef __KERNEL__ 8910b3a979347d4aba7de19e8d33eb8b87fe2a11ddDavid Howells/* Here we must cater to libcs that poke about in kernel headers. */ 9010b3a979347d4aba7de19e8d33eb8b87fe2a11ddDavid Howells 9110b3a979347d4aba7de19e8d33eb8b87fe2a11ddDavid Howellsstruct sigaction { 9210b3a979347d4aba7de19e8d33eb8b87fe2a11ddDavid Howells union { 9310b3a979347d4aba7de19e8d33eb8b87fe2a11ddDavid Howells __sighandler_t _sa_handler; 9410b3a979347d4aba7de19e8d33eb8b87fe2a11ddDavid Howells void (*_sa_sigaction)(int, struct siginfo *, void *); 9510b3a979347d4aba7de19e8d33eb8b87fe2a11ddDavid Howells } _u; 9610b3a979347d4aba7de19e8d33eb8b87fe2a11ddDavid Howells sigset_t sa_mask; 9710b3a979347d4aba7de19e8d33eb8b87fe2a11ddDavid Howells unsigned long sa_flags; 9810b3a979347d4aba7de19e8d33eb8b87fe2a11ddDavid Howells void (*sa_restorer)(void); 9910b3a979347d4aba7de19e8d33eb8b87fe2a11ddDavid Howells}; 10010b3a979347d4aba7de19e8d33eb8b87fe2a11ddDavid Howells 10110b3a979347d4aba7de19e8d33eb8b87fe2a11ddDavid Howells#define sa_handler _u._sa_handler 10210b3a979347d4aba7de19e8d33eb8b87fe2a11ddDavid Howells#define sa_sigaction _u._sa_sigaction 10310b3a979347d4aba7de19e8d33eb8b87fe2a11ddDavid Howells 10410b3a979347d4aba7de19e8d33eb8b87fe2a11ddDavid Howells#endif /* __KERNEL__ */ 10510b3a979347d4aba7de19e8d33eb8b87fe2a11ddDavid Howells 10610b3a979347d4aba7de19e8d33eb8b87fe2a11ddDavid Howellstypedef struct sigaltstack { 10710b3a979347d4aba7de19e8d33eb8b87fe2a11ddDavid Howells void __user *ss_sp; 10810b3a979347d4aba7de19e8d33eb8b87fe2a11ddDavid Howells int ss_flags; 10910b3a979347d4aba7de19e8d33eb8b87fe2a11ddDavid Howells size_t ss_size; 11010b3a979347d4aba7de19e8d33eb8b87fe2a11ddDavid Howells} stack_t; 11110b3a979347d4aba7de19e8d33eb8b87fe2a11ddDavid Howells 11210b3a979347d4aba7de19e8d33eb8b87fe2a11ddDavid Howells#endif /* _UAPI_M68K_SIGNAL_H */ 113