forked from mirrors/linux
		
	selinux: keep SELinux in sync with new capability definitions
When a new capability is defined, SELinux needs to be updated. Trigger a build error if a new capability is defined without corresponding update to security/selinux/include/classmap.h's COMMON_CAP2_PERMS. This is similar to BUILD_BUG_ON() guards in the SELinux nlmsgtab code to ensure that SELinux tracks new netlink message types as needed. Note that there is already a similar build guard in security/selinux/hooks.c to detect when more than 64 capabilities are defined, since that will require adding a third capability class to SELinux. A nicer way to do this would be to extend scripts/selinux/genheaders or a similar tool to auto-generate the necessary definitions and code for SELinux capability checking from include/uapi/linux/capability.h. AppArmor does something similar in its Makefile, although it only needs to generate a single table of names. That is left as future work. Signed-off-by: Stephen Smalley <sds@tycho.nsa.gov> [PM: reformat the description to keep checkpatch.pl happy] Signed-off-by: Paul Moore <paul@paul-moore.com>
This commit is contained in:
		
							parent
							
								
									ea49d10eee
								
							
						
					
					
						commit
						3322d0d64f
					
				
					 1 changed files with 4 additions and 0 deletions
				
			
		|  | @ -24,6 +24,10 @@ | |||
| #define COMMON_CAP2_PERMS  "mac_override", "mac_admin", "syslog", \ | ||||
| 		"wake_alarm", "block_suspend", "audit_read" | ||||
| 
 | ||||
| #if CAP_LAST_CAP > CAP_AUDIT_READ | ||||
| #error New capability defined, please update COMMON_CAP2_PERMS. | ||||
| #endif | ||||
| 
 | ||||
| /*
 | ||||
|  * Note: The name for any socket class should be suffixed by "socket", | ||||
|  *	 and doesn't contain more than one substr of "socket". | ||||
|  |  | |||
		Loading…
	
		Reference in a new issue
	
	 Stephen Smalley
						Stephen Smalley