X-Git-Url: https://scm.lunaixsky.com/lunaix-os.git/blobdiff_plain/509574b18a3373030cd0d7b979499499ff06dd9b..191c47396747e54457510c7e126b6ba098fefbbd:/lunaix-os/includes/lunaix/signal.h diff --git a/lunaix-os/includes/lunaix/signal.h b/lunaix-os/includes/lunaix/signal.h index c98441a..d1f7041 100644 --- a/lunaix-os/includes/lunaix/signal.h +++ b/lunaix-os/includes/lunaix/signal.h @@ -1,6 +1,8 @@ #ifndef __LUNAIX_SIGNAL_H #define __LUNAIX_SIGNAL_H +#include + #define _SIG_NUM 8 #define _SIG_PENDING(bitmap, sig) ((bitmap) & (1 << (sig))) @@ -8,13 +10,16 @@ #define _SIGSEGV 0 #define _SIGALRM 1 #define _SIGCHLD 2 -#define _SIGCLD SIGCHLD +#define _SIGCLD _SIGCHLD #define _SIGINT 3 #define _SIGKILL 4 #define _SIGSTOP 5 #define _SIGCONT 6 -#define _SIGNAL_UNMASKABLE ((1 << _SIGKILL) | (1 << _SIGSTOP)) +#define __SIGNAL(num) (1 << (num)) +#define __SET_SIGNAL(bitmap, num) (bitmap = bitmap | __SIGNAL(num)) + +#define _SIGNAL_UNMASKABLE (__SIGNAL(_SIGKILL) | __SIGNAL(_SIGSTOP)) #define _SIG_BLOCK 1 #define _SIG_UNBLOCK 2 @@ -23,7 +28,6 @@ typedef unsigned int sigset_t; typedef void (*sighandler_t)(int); -void -signal_dispatch(); +__LXSYSCALL2(int, signal, int, signum, sighandler_t, handler); #endif /* __LUNAIX_SIGNAL_H */