]> xenbits.xensource.com Git - unikraft/unikraft.git/commitdiff
lib/posix-process/signal: Add kernel definition of sigset_t
authorMichalis Pappas <michalis@unikraft.io>
Tue, 19 Mar 2024 10:25:43 +0000 (11:25 +0100)
committerUnikraft Bot <monkey@unikraft.io>
Wed, 26 Mar 2025 08:05:34 +0000 (08:05 +0000)
POSIX specifies that sigset_t can be defined either as integer
type or a structure type. Add kernel definition of sigset_t to
avoid compilation errors caused by flavors of libc that use the
struct definition.

Signed-off-by: Michalis Pappas <michalis@unikraft.io>
Reviewed-by: Ioan-Teodor Teugea <ioan_teodor.teugea@stud.acs.upb.ro>
Reviewed-by: Sergiu Moga <sergiu@unikraft.io>
Reviewed-by: Andrei Tatar <andrei@unikraft.io>
Approved-by: Andrei Tatar <andrei@unikraft.io>
GitHub-Closes: #1248

lib/posix-process/signal/sigset.h

index a6ae02202faef8c6f62bd38b553f5df3fb2e9df3..4e920d3f352c091fd7c5f193de7ded910f9fffe4 100644 (file)
 extern "C" {
 #endif
 
+/* Kernel-side definition of sigset_t */
+typedef unsigned long uk_sigset_t;
+
 #define uk_sigemptyset(_ptr)           (*(_ptr) = 0)
-#define uk_sigfillset(_ptr)            (*(_ptr) = ~((__sigset_t)0))
+#define uk_sigfillset(_ptr)            (*(_ptr) = ~((uk_sigset_t)0))
 #define uk_sigaddset(_ptr, _signo)     (*(_ptr) |= (1UL << ((_signo) - 1)))
 #define uk_sigdelset(_ptr, _signo)     (*(_ptr) &= ~(1UL << ((_signo) - 1)))
 #define uk_sigcopyset(_ptr1, _ptr2)    (*(_ptr1) = *(_ptr2))