]> git.corax.cc Git - corax/commitdiff
Add signal.h header
authorMatthias Kruk <m@m10k.eu>
Wed, 6 Nov 2019 06:12:09 +0000 (15:12 +0900)
committerMatthias Kruk <m@m10k.eu>
Wed, 6 Nov 2019 06:12:09 +0000 (15:12 +0900)
include/signal.h [new file with mode: 0644]

diff --git a/include/signal.h b/include/signal.h
new file mode 100644 (file)
index 0000000..c9dec84
--- /dev/null
@@ -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 */