1 /*
2 * Copyright 2008, Vasilis Kaoutsis, kaoutsis@sch.gr
3 * Distributed under the terms of the MIT License.
4 */
5
6
7 #include <signal.h>
8
9 #include <symbol_versioning.h>
10
11 #include <signal_private.h>
12
13
14 int
__sigpause_beos(int signal)15 __sigpause_beos(int signal)
16 {
17 sigset_t_beos processSignalSet;
18 if (__pthread_sigmask_beos(SIG_SETMASK, NULL, &processSignalSet) == -1)
19 return -1;
20
21 if (__sigdelset_beos(&processSignalSet, signal) == -1)
22 return -1;
23
24 return __sigsuspend_beos(&processSignalSet);
25 }
26
27
28 int
__sigpause(int signal)29 __sigpause(int signal)
30 {
31 sigset_t processSignalSet;
32 if (sigprocmask(SIG_SETMASK, NULL, &processSignalSet) == -1)
33 return -1;
34
35 if (sigdelset(&processSignalSet, signal) == -1)
36 return -1;
37
38 return sigsuspend(&processSignalSet);
39 }
40
41
42 DEFINE_LIBROOT_KERNEL_SYMBOL_VERSION("__sigpause_beos", "sigpause@", "BASE");
43
44 DEFINE_LIBROOT_KERNEL_SYMBOL_VERSION("__sigpause", "sigpause@@", "1_ALPHA4");
45