From 9804cee6edf4f4d4a11a69f8a9e579be6f79d9a2 Mon Sep 17 00:00:00 2001 From: Matthias Kruk Date: Wed, 6 Nov 2019 15:12:09 +0900 Subject: [PATCH] Add signal.h header --- include/signal.h | 95 ++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 95 insertions(+) create mode 100644 include/signal.h diff --git a/include/signal.h b/include/signal.h new file mode 100644 index 0000000..c9dec84 --- /dev/null +++ b/include/signal.h @@ -0,0 +1,95 @@ +#ifndef __SIGNAL_H +#define __SIGNAL_H + +#define SIGHUP 1 +#define SIGINT 2 +#define SIGQUIT 3 +#define SIGILL 4 +#define SIGTRAP 5 +#define SIGABRT 6 +#define SIGBUS 7 +#define SIGFPE 8 +#define SIGKILL 9 +#define SIGUSR1 10 +#define SIGSEGV 11 +#define SIGUSR2 12 +#define SIGPIPE 13 +#define SIGALRM 14 +#define SIGTERM 15 +#define SIGSTKFLT 16 /* unused */ +#define SIGCHLD 17 +#define SIGCONT 18 +#define SIGSTOP 19 +#define SIGTSTP 20 +#define SIGTTIN 21 +#define SIGTTOU 22 +#define SIGURG 23 +#define SIGXCPU 24 +#define SIGXFSZ 25 +#define SIGVTALRM 26 +#define SIGPROF 27 +#define SIGWINCH 28 +#define SIGIO 29 +#define SIGPWR 30 +#define SIGSYS 31 + +/* synonyms */ +#define SIGIOT 6 +#define SIGCLD SIGCHLD +#define SIGINFO SIGPWR +#define SIGLOST -1 /* not defined */ +#define SIGPOLL SIGIO +#define SIGUNUSED SIGSYS +#define SIGEMT SIGUNUSED + +#ifndef __ASSEMBLY_SOURCE + +typedef struct siginfo siginfo_t; + +/* FIXME: move definition of clock_t into the proper header file */ +typedef unsigned int clock_t; + +/* FIXME: add the correct definition for sigval_t and sigset_t */ +typedef unsigned int sigval_t; +typedef unsigned int sigset_t; + +struct siginfo { + int si_signo; + int si_errno; + int si_code; + int si_trapno; + pid_t si_pid; + uid_t si_uid; + int si_status; + clock_t si_utime; + clock_t si_stime; + sigval_t si_value; + int si_int; + void *si_ptr; + int si_overrun; + int si_timerid; + void *si_addr; + long si_band; + int si_fd; + short si_addr_lsb; + void *si_call_addr; + int si_syscall; + unsigned int si_arch; +}; + +struct sigaction { + void (*sa_handler)(int); + void (*sa_sigaction)(int, siginfo_t*, void*); + sigset_t sa_mask; + int sa_flags; + void (*sa_restorer)(void); +}; + +typedef void (*sighandler_t)(int); + +#define SIG_IGN ((sighandler_t)0x1) /* "ignore" handler */ +#define SIG_DFL ((sighandler_t)0x0) /* default handler */ + +#endif /* __ASSEMBLY_SOURCE */ + +#endif /* __SIGNAL_H */ -- 2.47.3