|
Last change
on this file since 3927 was 2, checked in by bird, 23 years ago |
|
Initial revision
|
-
Property cvs2svn:cvs-rev
set to
1.1
-
Property svn:eol-style
set to
native
-
Property svn:executable
set to
*
|
|
File size:
931 bytes
|
| Line | |
|---|
| 1 | /* Version of sigsetmask.c
|
|---|
| 2 | Written by Steve Chamberlain (sac@cygnus.com).
|
|---|
| 3 | Contributed by Cygnus Support.
|
|---|
| 4 | This file is in the public doamin. */
|
|---|
| 5 |
|
|---|
| 6 | /*
|
|---|
| 7 |
|
|---|
| 8 | @deftypefn Supplemental int sigsetmask (int @var{set})
|
|---|
| 9 |
|
|---|
| 10 | Sets the signal mask to the one provided in @var{set} and returns
|
|---|
| 11 | the old mask (which, for libiberty's implementation, will always
|
|---|
| 12 | be the value @code{1}).
|
|---|
| 13 |
|
|---|
| 14 | @end deftypefn
|
|---|
| 15 |
|
|---|
| 16 | */
|
|---|
| 17 |
|
|---|
| 18 | #define _POSIX_SOURCE
|
|---|
| 19 | #include <ansidecl.h>
|
|---|
| 20 | /* Including <sys/types.h> seems to be needed by ISC. */
|
|---|
| 21 | #include <sys/types.h>
|
|---|
| 22 | #include <signal.h>
|
|---|
| 23 |
|
|---|
| 24 | extern void abort PARAMS ((void)) ATTRIBUTE_NORETURN;
|
|---|
| 25 |
|
|---|
| 26 | #ifdef SIG_SETMASK
|
|---|
| 27 | int
|
|---|
| 28 | DEFUN(sigsetmask,(set),
|
|---|
| 29 | int set)
|
|---|
| 30 | {
|
|---|
| 31 | sigset_t new;
|
|---|
| 32 | sigset_t old;
|
|---|
| 33 |
|
|---|
| 34 | sigemptyset (&new);
|
|---|
| 35 | if (set != 0) {
|
|---|
| 36 | abort(); /* FIXME, we don't know how to translate old mask to new */
|
|---|
| 37 | }
|
|---|
| 38 | sigprocmask(SIG_SETMASK, &new, &old);
|
|---|
| 39 | return 1; /* FIXME, we always return 1 as old value. */
|
|---|
| 40 | }
|
|---|
| 41 | #endif
|
|---|
Note:
See
TracBrowser
for help on using the repository browser.