New configuration header file to include/ exclude functionality. Extracted privileged features from struct proc and create new struct priv. Renamed various system calls for readability.
		
			
				
	
	
		
			27 lines
		
	
	
		
			1.0 KiB
		
	
	
	
		
			C
		
	
	
	
	
	
			
		
		
	
	
			27 lines
		
	
	
		
			1.0 KiB
		
	
	
	
		
			C
		
	
	
	
	
	
#ifndef IPC_H
 | 
						|
#define IPC_H
 | 
						|
 | 
						|
/* Masks and flags for system calls. */
 | 
						|
#define SYSCALL_FUNC	0x0F	/* mask for system call function */
 | 
						|
#define SYSCALL_FLAGS   0xF0    /* mask for system call flags */
 | 
						|
#define NON_BLOCKING    0x10	/* prevent blocking, return error */
 | 
						|
#define FRESH_ANSWER    0x20	/* ignore pending notifications as answer */
 | 
						|
				/* (default behaviour for SENDREC calls) */
 | 
						|
 | 
						|
/* System calls (numbers passed when trapping to the kernel). */
 | 
						|
#define ECHO		 0	/* function code for echoing messages */
 | 
						|
#define SEND		 1	/* function code for sending messages */
 | 
						|
#define RECEIVE		 2	/* function code for receiving messages */
 | 
						|
#define SENDREC	 	 3  	/* function code for SEND + RECEIVE */
 | 
						|
#define NOTIFY		 4	/* function code for notifications */
 | 
						|
#define ALERT		 5	/* function code for alerting */
 | 
						|
 | 
						|
/* Call masks indicating which system calls a process can make. */
 | 
						|
#define EMPTY_CALL_MASK 	(0)
 | 
						|
#define _USER_CALL_MASK	 	((1 << SENDREC) | (1 << ALERT))
 | 
						|
#define SYSTEM_CALL_MASK 	(~0)
 | 
						|
#define USER_CALL_MASK 	(~0)
 | 
						|
 | 
						|
 | 
						|
#endif /* IPC_H */
 |