 7597f4a8fc
			
		
	
	
		7597f4a8fc
		
	
	
	
	
		
			
			. use netbsd sigframe, sigcontext struct . netbsd sigframe *contains* sigcontext; use that directly in kernel sigsend . drop two fields from minix x86 stackframe.h (process context) that were unused, retadr and st use in-sigframe sigcontext Change-Id: Ib59d699596dc3a78163dee59f19730482fdddf11
		
			
				
	
	
		
			36 lines
		
	
	
		
			709 B
		
	
	
	
		
			C
		
	
	
	
	
	
			
		
		
	
	
			36 lines
		
	
	
		
			709 B
		
	
	
	
		
			C
		
	
	
	
	
	
| #include <sys/cdefs.h>
 | |
| #include <sys/types.h>
 | |
| #include <sys/sigtypes.h>
 | |
| #include <sys/signal.h>
 | |
| #include <lib.h>
 | |
| #include <string.h>
 | |
| #include "namespace.h"
 | |
| 
 | |
| #include <string.h>
 | |
| #include <signal.h>
 | |
| 
 | |
| int sigprocmask(how, set, oset)
 | |
| int how;
 | |
| const sigset_t *set;
 | |
| sigset_t *oset;
 | |
| {
 | |
|   message m;
 | |
| 
 | |
|   memset(&m, 0, sizeof(m));
 | |
|   if (set == (sigset_t *) NULL) {
 | |
| 	m.PM_SIG_HOW = SIG_INQUIRE;
 | |
| 	sigemptyset(&m.PM_SIG_SET);
 | |
|   } else {
 | |
| 	m.PM_SIG_HOW = how;
 | |
| 	m.PM_SIG_SET = *set;
 | |
|   }
 | |
|   if (_syscall(PM_PROC_NR, PM_SIGPROCMASK, &m) < 0) return(-1);
 | |
|   if (oset != (sigset_t *) NULL) *oset = m.PM_SIG_SET;
 | |
| 
 | |
|   return(m.m_type);
 | |
| }
 | |
| 
 | |
| #if defined(__minix) && defined(__weak_alias)
 | |
| __weak_alias(sigprocmask, __sigprocmask14)
 | |
| #endif
 |