xref: /csrg-svn/lib/libc/gen/sigsetops.c (revision 51650)
144352Skarels /*-
244352Skarels  * Copyright (c) 1989 The Regents of the University of California.
344352Skarels  * All rights reserved.
444352Skarels  *
544352Skarels  * %sccs.include.redist.c%
644352Skarels  *
7*51650Sbostic  *	@(#)sigsetops.c	5.4 (Berkeley) 11/12/91
844352Skarels  */
944352Skarels 
1044352Skarels #if defined(LIBC_SCCS) && !defined(lint)
11*51650Sbostic static char sccsid[] = "@(#)sigsetops.c	5.4 (Berkeley) 11/12/91";
1244352Skarels #endif /* LIBC_SCCS and not lint */
1344352Skarels 
14*51650Sbostic #include <signal.h>
1544352Skarels 
1644352Skarels #undef sigemptyset
1744352Skarels #undef sigfillset
1844352Skarels #undef sigaddset
1944352Skarels #undef sigdelset
2044352Skarels #undef sigismember
2144352Skarels 
2244352Skarels sigemptyset(set)
2344352Skarels 	sigset_t *set;
2444352Skarels {
2544352Skarels 	*set = 0;
2644869Skarels 	return (0);
2744352Skarels }
2844352Skarels 
2944352Skarels sigfillset(set)
3044352Skarels 	sigset_t *set;
3144352Skarels {
3244352Skarels 	*set = ~(sigset_t)0;
3344869Skarels 	return (0);
3444352Skarels }
3544352Skarels 
3644352Skarels sigaddset(set, signo)
3744352Skarels 	sigset_t *set;
3844352Skarels 	int signo;
3944352Skarels {
4044352Skarels 	*set |= sigmask(signo);
4144352Skarels 	return (0);
4244352Skarels }
4344352Skarels 
4444352Skarels sigdelset(set, signo)
4544352Skarels 	sigset_t *set;
4644352Skarels 	int signo;
4744352Skarels {
4844352Skarels 	*set &= ~sigmask(signo);
4944352Skarels 	return (0);
5044352Skarels }
5144352Skarels 
5244352Skarels sigismember(set, signo)
5346597Sdonn 	const sigset_t *set;
5444352Skarels 	int signo;
5544352Skarels {
5644352Skarels 	return ((*set & ~sigmask(signo)) != 0);
5744352Skarels }
58