// POSIX signal declarations for the nt-lite POSIX personality. #pragma once #include #include #include #include typedef uint64_t sigset_t; typedef int sig_atomic_t; typedef void (*sighandler_t)(int); #define SIGHUP NTL_POSIX_SIGNAL_HUP #define SIGINT NTL_POSIX_SIGNAL_INT #define SIGQUIT NTL_POSIX_SIGNAL_QUIT #define SIGILL NTL_POSIX_SIGNAL_ILL #define SIGABRT NTL_POSIX_SIGNAL_ABRT #define SIGFPE NTL_POSIX_SIGNAL_FPE #define SIGKILL NTL_POSIX_SIGNAL_KILL #define SIGSEGV NTL_POSIX_SIGNAL_SEGV #define SIGPIPE NTL_POSIX_SIGNAL_PIPE #define SIGALRM NTL_POSIX_SIGNAL_ALRM #define SIGTERM NTL_POSIX_SIGNAL_TERM #define SIGUSR1 NTL_POSIX_SIGNAL_USR1 #define SIGUSR2 NTL_POSIX_SIGNAL_USR2 #define SIGCHLD NTL_POSIX_SIGNAL_CHLD #define SIG_DFL ((sighandler_t)0) #define SIG_IGN ((sighandler_t)1) #define SIG_ERR ((sighandler_t)-1) #define SIG_BLOCK 1 #define SIG_UNBLOCK 2 #define SIG_SETMASK 3 struct sigaction { sighandler_t sa_handler; sigset_t sa_mask; int sa_flags; }; NTL_POSIX_API int sigemptyset(sigset_t* set); NTL_POSIX_API int sigfillset(sigset_t* set); NTL_POSIX_API int sigaddset(sigset_t* set, int signalNumber); NTL_POSIX_API int sigdelset(sigset_t* set, int signalNumber); NTL_POSIX_API int sigismember(const sigset_t* set, int signalNumber); NTL_POSIX_API int sigaction(int signalNumber, const struct sigaction* action, struct sigaction* oldAction); NTL_POSIX_API int sigprocmask(int how, const sigset_t* set, sigset_t* oldSet); NTL_POSIX_API int sigpending(sigset_t* set); NTL_POSIX_API int sigsuspend(const sigset_t* set); NTL_POSIX_API int kill(pid_t pid, int signalNumber); NTL_POSIX_API sighandler_t signal(int signalNumber, sighandler_t handler); NTL_POSIX_API int raise(int signalNumber);