-/* Copyright (C) 1991, 92, 93, 94, 95, 96, 97 Free Software Foundation, Inc.
+/* Copyright (C) 1991-2019 Free Software Foundation, Inc.
This file is part of the GNU C Library.
The GNU C Library is free software; you can redistribute it and/or
Lesser General Public License for more details.
You should have received a copy of the GNU Lesser General Public
- License along with the GNU C Library; if not, write to the Free
- Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
- 02111-1307 USA. */
+ License along with the GNU C Library; if not, see
+ <https://www.gnu.org/licenses/>. */
#include <errno.h>
#include <signal.h>
according to HOW, which may be SIG_BLOCK, SIG_UNBLOCK or SIG_SETMASK.
If OSET is not NULL, store the old set of blocked signals in *OSET. */
int
-__sigprocmask (how, set, oset)
- int how;
- const sigset_t *set;
- sigset_t *oset;
+__sigprocmask (int how, const sigset_t *set, sigset_t *oset)
{
struct hurd_sigstate *ss;
sigset_t old, new;
switch (how)
{
case SIG_BLOCK:
- ss->blocked |= new;
+ __sigorset (&ss->blocked, &ss->blocked, &new);
break;
case SIG_UNBLOCK:
return 0;
}
+libc_hidden_def (__sigprocmask)
weak_alias (__sigprocmask, sigprocmask)