set big endian as default for armeb aros target. (mschulz)
[AROS.git] / compiler / posixc / sigsuspend.c
blob984e5b8f67b5e038dc03620129a79015906ec814
1 /*
2 Copyright © 1995-2017, The AROS Development Team. All rights reserved.
3 $Id$
5 POSIX.1-2008 function sigsuspend().
6 */
8 #include <aros/debug.h>
9 #include <errno.h>
11 /*****************************************************************************
13 NAME */
15 #include <signal.h>
17 int sigsuspend (
19 /* SYNOPSIS */
20 const sigset_t *mask)
22 /* FUNCTION
23 replace the callers signal mask, and suspend it
24 until it signaled to terminate, or to invoke a
25 signal handler.
27 If the signal terminates the process, sigsuspend()
28 doesn't return.
30 If the signal is caught, sigsuspend() returns following the
31 signal handler, and the signal mask is restored to
32 the state prior to calling sigsuspend().
34 SIGKILL or SIGSTOP cannot be blocked; specifying
35 them in the mask has no effect on the process's signal mask.
37 INPUTS
39 RESULT
40 always returns -1, normally with the error EINTR.
42 NOTES
43 Not implemented.
45 Normally used in conjunction with sigprocmask(), to prevent
46 signal delivery during critical code sections. Callers must
47 block the signals with sigprocmask(). On completion, the caller
48 waits for signals by calling sigsuspend() with the return value
49 of sigprocmask()
51 EXAMPLE
53 BUGS
55 SEE ALSO
56 kill(), pause(), sigaction(), signal(), sigprocmask(),
57 sigwaitinfo(), sigsetops(), sigwait()
59 INTERNALS
60 POSIX.1-2001
62 ******************************************************************************/
64 /* TODO: Implement sigsuspend() */
65 AROS_FUNCTION_NOT_IMPLEMENTED("posixc");
67 errno = ENOSYS;
69 return -1;
71 } /* sigsuspend */