2 * Copyright 2002-2011, Haiku, Inc. All rights reserved.
3 * Distributed under the terms of the MIT license.
6 * Daniel Reinhold, danielre@users.sf.net
7 * Ingo Weinhold, ingo_weinhold@gmx.de
15 #include <signal_defs.h>
18 #include <symbol_versioning.h>
20 #include <errno_private.h>
21 #include <signal_private.h>
24 // #pragma - backward compatibility implementations
28 __sigemptyset_beos(sigset_t_beos
* set
)
30 *set
= (sigset_t_beos
)0;
36 __sigfillset_beos(sigset_t_beos
* set
)
38 *set
= ~(sigset_t_beos
)0;
44 __sigismember_beos(const sigset_t_beos
* set
, int signal
)
46 if (signal
<= 0 || signal
> MAX_SIGNAL_NUMBER_BEOS
) {
51 return (*set
& SIGNAL_TO_MASK(signal
)) != 0 ? 1 : 0;
56 __sigaddset_beos(sigset_t_beos
* set
, int signal
)
58 if (signal
<= 0 || signal
> MAX_SIGNAL_NUMBER_BEOS
) {
63 *set
|= SIGNAL_TO_MASK(signal
);
69 __sigdelset_beos(sigset_t_beos
* set
, int signal
)
71 if (signal
<= 0 || signal
> MAX_SIGNAL_NUMBER_BEOS
) {
76 *set
&= ~SIGNAL_TO_MASK(signal
);
81 // #pragma - current implementations
85 __sigemptyset(sigset_t
* set
)
93 __sigfillset(sigset_t
* set
)
101 __sigismember(const sigset_t
* set
, int signal
)
103 if (signal
<= 0 || signal
> MAX_SIGNAL_NUMBER
) {
108 return (*set
& SIGNAL_TO_MASK(signal
)) != 0 ? 1 : 0;
113 __sigaddset(sigset_t
* set
, int signal
)
115 if (signal
<= 0 || signal
> MAX_SIGNAL_NUMBER
) {
120 *set
|= SIGNAL_TO_MASK(signal
);
126 __sigdelset(sigset_t
* set
, int signal
)
128 if (signal
<= 0 || signal
> MAX_SIGNAL_NUMBER
) {
133 *set
&= ~SIGNAL_TO_MASK(signal
);
138 // #pragma - versioned symbols
141 DEFINE_LIBROOT_KERNEL_SYMBOL_VERSION("__sigemptyset_beos", "sigemptyset@",
143 DEFINE_LIBROOT_KERNEL_SYMBOL_VERSION("__sigfillset_beos", "sigfillset@",
145 DEFINE_LIBROOT_KERNEL_SYMBOL_VERSION("__sigismember_beos", "sigismember@",
147 DEFINE_LIBROOT_KERNEL_SYMBOL_VERSION("__sigaddset_beos", "sigaddset@", "BASE");
148 DEFINE_LIBROOT_KERNEL_SYMBOL_VERSION("__sigdelset_beos", "sigdelset@", "BASE");
150 DEFINE_LIBROOT_KERNEL_SYMBOL_VERSION("__sigemptyset", "sigemptyset@@",
152 DEFINE_LIBROOT_KERNEL_SYMBOL_VERSION("__sigfillset", "sigfillset@@",
154 DEFINE_LIBROOT_KERNEL_SYMBOL_VERSION("__sigismember", "sigismember@@",
156 DEFINE_LIBROOT_KERNEL_SYMBOL_VERSION("__sigaddset", "sigaddset@@", "1_ALPHA4");
157 DEFINE_LIBROOT_KERNEL_SYMBOL_VERSION("__sigdelset", "sigdelset@@", "1_ALPHA4");