23 lines
		
	
	
		
			446 B
		
	
	
	
		
			C
		
	
	
	
	
	
			
		
		
	
	
			23 lines
		
	
	
		
			446 B
		
	
	
	
		
			C
		
	
	
	
	
	
#include <lib.h>
 | 
						|
#define sigprocmask _sigprocmask
 | 
						|
#include <signal.h>
 | 
						|
 | 
						|
PUBLIC int sigprocmask(how, set, oset)
 | 
						|
int how;
 | 
						|
_CONST sigset_t *set;
 | 
						|
sigset_t *oset;
 | 
						|
{
 | 
						|
  message m;
 | 
						|
 | 
						|
  if (set == (sigset_t *) NULL) {
 | 
						|
	m.m2_i1 = SIG_INQUIRE;
 | 
						|
	m.m2_l1 = 0;
 | 
						|
  } else {
 | 
						|
	m.m2_i1 = how;
 | 
						|
	m.m2_l1 = (long) *set;
 | 
						|
  }
 | 
						|
  if (_syscall(PM_PROC_NR, SIGPROCMASK, &m) < 0) return(-1);
 | 
						|
  if (oset != (sigset_t *) NULL) *oset = (sigset_t) (m.m2_l1);
 | 
						|
  return(m.m_type);
 | 
						|
}
 |