Luna/libc/include/bits/signal.h
apio 8066e8f1d8
Some checks failed
continuous-integration/drone/pr Build is failing
kernel+libc: Implement sigprocmask() and friends
2023-07-10 21:01:59 +02:00

51 lines
929 B
C

/* bits/signal.h: Signal-related definitions. */
#ifndef _BITS_SIGNAL_H
#define _BITS_SIGNAL_H
typedef void (*__simple_sighandler_t)(int);
#define SIG_IGN (__simple_sighandler_t)(-1)
#define SIG_DFL (__simple_sighandler_t)(-2)
typedef int sigset_t;
struct sigaction
{
__simple_sighandler_t sa_handler;
sigset_t sa_mask;
int sa_flags;
void* __sa_sigreturn = nullptr;
};
// Constants for the 'how' parameter in sigprocmask().
#define SIG_BLOCK 0
#define SIG_UNBLOCK 1
#define SIG_SETMASK 2
// The signals with explicit numbers have portable signal numbers.
enum __signals
{
SIGHUP = 1,
SIGINT = 2,
SIGQUIT = 3,
SIGILL = 4,
SIGTRAP = 5,
SIGABRT = 6,
SIGCHLD,
SIGFPE = 8,
SIGKILL = 9,
SIGSTOP,
SIGSEGV = 11,
SIGCONT,
SIGPIPE = 13,
SIGALRM = 14,
SIGTERM = 15,
// FIXME: Add the remaining signals.
__NSIG,
};
#define NSIG (__NSIG - 1)
#endif