access_vectors revision 91a3eeac8fac333af4997f9fe5e5c7f454c7f336
12dd4e51d5c2a2dfc0bfdee9303269f5a665f6e3Stephen Smalley#
22dd4e51d5c2a2dfc0bfdee9303269f5a665f6e3Stephen Smalley# Define common prefixes for access vectors
32dd4e51d5c2a2dfc0bfdee9303269f5a665f6e3Stephen Smalley#
42dd4e51d5c2a2dfc0bfdee9303269f5a665f6e3Stephen Smalley# common common_name { permission_name ... }
52dd4e51d5c2a2dfc0bfdee9303269f5a665f6e3Stephen Smalley
62dd4e51d5c2a2dfc0bfdee9303269f5a665f6e3Stephen Smalley
72dd4e51d5c2a2dfc0bfdee9303269f5a665f6e3Stephen Smalley#
82dd4e51d5c2a2dfc0bfdee9303269f5a665f6e3Stephen Smalley# Define a common prefix for file access vectors.
92dd4e51d5c2a2dfc0bfdee9303269f5a665f6e3Stephen Smalley#
102dd4e51d5c2a2dfc0bfdee9303269f5a665f6e3Stephen Smalley
112dd4e51d5c2a2dfc0bfdee9303269f5a665f6e3Stephen Smalleycommon file
122dd4e51d5c2a2dfc0bfdee9303269f5a665f6e3Stephen Smalley{
132dd4e51d5c2a2dfc0bfdee9303269f5a665f6e3Stephen Smalley	ioctl
142dd4e51d5c2a2dfc0bfdee9303269f5a665f6e3Stephen Smalley	read
152dd4e51d5c2a2dfc0bfdee9303269f5a665f6e3Stephen Smalley	write
162dd4e51d5c2a2dfc0bfdee9303269f5a665f6e3Stephen Smalley	create
172dd4e51d5c2a2dfc0bfdee9303269f5a665f6e3Stephen Smalley	getattr
182dd4e51d5c2a2dfc0bfdee9303269f5a665f6e3Stephen Smalley	setattr
192dd4e51d5c2a2dfc0bfdee9303269f5a665f6e3Stephen Smalley	lock
202dd4e51d5c2a2dfc0bfdee9303269f5a665f6e3Stephen Smalley	relabelfrom
212dd4e51d5c2a2dfc0bfdee9303269f5a665f6e3Stephen Smalley	relabelto
222dd4e51d5c2a2dfc0bfdee9303269f5a665f6e3Stephen Smalley	append
232dd4e51d5c2a2dfc0bfdee9303269f5a665f6e3Stephen Smalley	unlink
242dd4e51d5c2a2dfc0bfdee9303269f5a665f6e3Stephen Smalley	link
252dd4e51d5c2a2dfc0bfdee9303269f5a665f6e3Stephen Smalley	rename
262dd4e51d5c2a2dfc0bfdee9303269f5a665f6e3Stephen Smalley	execute
272dd4e51d5c2a2dfc0bfdee9303269f5a665f6e3Stephen Smalley	quotaon
282dd4e51d5c2a2dfc0bfdee9303269f5a665f6e3Stephen Smalley	mounton
292dd4e51d5c2a2dfc0bfdee9303269f5a665f6e3Stephen Smalley}
302dd4e51d5c2a2dfc0bfdee9303269f5a665f6e3Stephen Smalley
312dd4e51d5c2a2dfc0bfdee9303269f5a665f6e3Stephen Smalley
322dd4e51d5c2a2dfc0bfdee9303269f5a665f6e3Stephen Smalley#
332dd4e51d5c2a2dfc0bfdee9303269f5a665f6e3Stephen Smalley# Define a common prefix for socket access vectors.
342dd4e51d5c2a2dfc0bfdee9303269f5a665f6e3Stephen Smalley#
352dd4e51d5c2a2dfc0bfdee9303269f5a665f6e3Stephen Smalley
362dd4e51d5c2a2dfc0bfdee9303269f5a665f6e3Stephen Smalleycommon socket
372dd4e51d5c2a2dfc0bfdee9303269f5a665f6e3Stephen Smalley{
382dd4e51d5c2a2dfc0bfdee9303269f5a665f6e3Stephen Smalley# inherited from file
392dd4e51d5c2a2dfc0bfdee9303269f5a665f6e3Stephen Smalley	ioctl
402dd4e51d5c2a2dfc0bfdee9303269f5a665f6e3Stephen Smalley	read
412dd4e51d5c2a2dfc0bfdee9303269f5a665f6e3Stephen Smalley	write
422dd4e51d5c2a2dfc0bfdee9303269f5a665f6e3Stephen Smalley	create
432dd4e51d5c2a2dfc0bfdee9303269f5a665f6e3Stephen Smalley	getattr
442dd4e51d5c2a2dfc0bfdee9303269f5a665f6e3Stephen Smalley	setattr
452dd4e51d5c2a2dfc0bfdee9303269f5a665f6e3Stephen Smalley	lock
462dd4e51d5c2a2dfc0bfdee9303269f5a665f6e3Stephen Smalley	relabelfrom
472dd4e51d5c2a2dfc0bfdee9303269f5a665f6e3Stephen Smalley	relabelto
482dd4e51d5c2a2dfc0bfdee9303269f5a665f6e3Stephen Smalley	append
492dd4e51d5c2a2dfc0bfdee9303269f5a665f6e3Stephen Smalley# socket-specific
502dd4e51d5c2a2dfc0bfdee9303269f5a665f6e3Stephen Smalley	bind
512dd4e51d5c2a2dfc0bfdee9303269f5a665f6e3Stephen Smalley	connect
522dd4e51d5c2a2dfc0bfdee9303269f5a665f6e3Stephen Smalley	listen
532dd4e51d5c2a2dfc0bfdee9303269f5a665f6e3Stephen Smalley	accept
542dd4e51d5c2a2dfc0bfdee9303269f5a665f6e3Stephen Smalley	getopt
552dd4e51d5c2a2dfc0bfdee9303269f5a665f6e3Stephen Smalley	setopt
562dd4e51d5c2a2dfc0bfdee9303269f5a665f6e3Stephen Smalley	shutdown
572dd4e51d5c2a2dfc0bfdee9303269f5a665f6e3Stephen Smalley	recvfrom
582dd4e51d5c2a2dfc0bfdee9303269f5a665f6e3Stephen Smalley	sendto
592dd4e51d5c2a2dfc0bfdee9303269f5a665f6e3Stephen Smalley	name_bind
602dd4e51d5c2a2dfc0bfdee9303269f5a665f6e3Stephen Smalley}
612dd4e51d5c2a2dfc0bfdee9303269f5a665f6e3Stephen Smalley
622dd4e51d5c2a2dfc0bfdee9303269f5a665f6e3Stephen Smalley#
632dd4e51d5c2a2dfc0bfdee9303269f5a665f6e3Stephen Smalley# Define a common prefix for ipc access vectors.
642dd4e51d5c2a2dfc0bfdee9303269f5a665f6e3Stephen Smalley#
652dd4e51d5c2a2dfc0bfdee9303269f5a665f6e3Stephen Smalley
662dd4e51d5c2a2dfc0bfdee9303269f5a665f6e3Stephen Smalleycommon ipc
672dd4e51d5c2a2dfc0bfdee9303269f5a665f6e3Stephen Smalley{
682dd4e51d5c2a2dfc0bfdee9303269f5a665f6e3Stephen Smalley	create
692dd4e51d5c2a2dfc0bfdee9303269f5a665f6e3Stephen Smalley	destroy
702dd4e51d5c2a2dfc0bfdee9303269f5a665f6e3Stephen Smalley	getattr
712dd4e51d5c2a2dfc0bfdee9303269f5a665f6e3Stephen Smalley	setattr
722dd4e51d5c2a2dfc0bfdee9303269f5a665f6e3Stephen Smalley	read
732dd4e51d5c2a2dfc0bfdee9303269f5a665f6e3Stephen Smalley	write
742dd4e51d5c2a2dfc0bfdee9303269f5a665f6e3Stephen Smalley	associate
752dd4e51d5c2a2dfc0bfdee9303269f5a665f6e3Stephen Smalley	unix_read
762dd4e51d5c2a2dfc0bfdee9303269f5a665f6e3Stephen Smalley	unix_write
772dd4e51d5c2a2dfc0bfdee9303269f5a665f6e3Stephen Smalley}
782dd4e51d5c2a2dfc0bfdee9303269f5a665f6e3Stephen Smalley
792dd4e51d5c2a2dfc0bfdee9303269f5a665f6e3Stephen Smalley#
808a003607064804307201d0738e1e284442f9826bStephen Smalley# Define a common for capability access vectors.
818a003607064804307201d0738e1e284442f9826bStephen Smalley#
828a003607064804307201d0738e1e284442f9826bStephen Smalleycommon cap
838a003607064804307201d0738e1e284442f9826bStephen Smalley{
848a003607064804307201d0738e1e284442f9826bStephen Smalley	# The capabilities are defined in include/linux/capability.h
858a003607064804307201d0738e1e284442f9826bStephen Smalley	# Capabilities >= 32 are defined in the cap2 common.
868a003607064804307201d0738e1e284442f9826bStephen Smalley	# Care should be taken to ensure that these are consistent with
878a003607064804307201d0738e1e284442f9826bStephen Smalley	# those definitions. (Order matters)
888a003607064804307201d0738e1e284442f9826bStephen Smalley
898a003607064804307201d0738e1e284442f9826bStephen Smalley	chown
908a003607064804307201d0738e1e284442f9826bStephen Smalley	dac_override
918a003607064804307201d0738e1e284442f9826bStephen Smalley	dac_read_search
928a003607064804307201d0738e1e284442f9826bStephen Smalley	fowner
938a003607064804307201d0738e1e284442f9826bStephen Smalley	fsetid
948a003607064804307201d0738e1e284442f9826bStephen Smalley	kill
958a003607064804307201d0738e1e284442f9826bStephen Smalley	setgid
968a003607064804307201d0738e1e284442f9826bStephen Smalley	setuid
978a003607064804307201d0738e1e284442f9826bStephen Smalley	setpcap
988a003607064804307201d0738e1e284442f9826bStephen Smalley	linux_immutable
998a003607064804307201d0738e1e284442f9826bStephen Smalley	net_bind_service
1008a003607064804307201d0738e1e284442f9826bStephen Smalley	net_broadcast
1018a003607064804307201d0738e1e284442f9826bStephen Smalley	net_admin
1028a003607064804307201d0738e1e284442f9826bStephen Smalley	net_raw
1038a003607064804307201d0738e1e284442f9826bStephen Smalley	ipc_lock
1048a003607064804307201d0738e1e284442f9826bStephen Smalley	ipc_owner
1058a003607064804307201d0738e1e284442f9826bStephen Smalley	sys_module
1068a003607064804307201d0738e1e284442f9826bStephen Smalley	sys_rawio
1078a003607064804307201d0738e1e284442f9826bStephen Smalley	sys_chroot
1088a003607064804307201d0738e1e284442f9826bStephen Smalley	sys_ptrace
1098a003607064804307201d0738e1e284442f9826bStephen Smalley	sys_pacct
1108a003607064804307201d0738e1e284442f9826bStephen Smalley	sys_admin
1118a003607064804307201d0738e1e284442f9826bStephen Smalley	sys_boot
1128a003607064804307201d0738e1e284442f9826bStephen Smalley	sys_nice
1138a003607064804307201d0738e1e284442f9826bStephen Smalley	sys_resource
1148a003607064804307201d0738e1e284442f9826bStephen Smalley	sys_time
1158a003607064804307201d0738e1e284442f9826bStephen Smalley	sys_tty_config
1168a003607064804307201d0738e1e284442f9826bStephen Smalley	mknod
1178a003607064804307201d0738e1e284442f9826bStephen Smalley	lease
1188a003607064804307201d0738e1e284442f9826bStephen Smalley	audit_write
1198a003607064804307201d0738e1e284442f9826bStephen Smalley	audit_control
1208a003607064804307201d0738e1e284442f9826bStephen Smalley	setfcap
1218a003607064804307201d0738e1e284442f9826bStephen Smalley}
1228a003607064804307201d0738e1e284442f9826bStephen Smalley
1238a003607064804307201d0738e1e284442f9826bStephen Smalleycommon cap2
1248a003607064804307201d0738e1e284442f9826bStephen Smalley{
1258a003607064804307201d0738e1e284442f9826bStephen Smalley	mac_override	# unused by SELinux
1268a003607064804307201d0738e1e284442f9826bStephen Smalley	mac_admin	# unused by SELinux
1278a003607064804307201d0738e1e284442f9826bStephen Smalley	syslog
1288a003607064804307201d0738e1e284442f9826bStephen Smalley	wake_alarm
1298a003607064804307201d0738e1e284442f9826bStephen Smalley	block_suspend
1308a003607064804307201d0738e1e284442f9826bStephen Smalley	audit_read
1318a003607064804307201d0738e1e284442f9826bStephen Smalley}
1328a003607064804307201d0738e1e284442f9826bStephen Smalley
1338a003607064804307201d0738e1e284442f9826bStephen Smalley#
1342dd4e51d5c2a2dfc0bfdee9303269f5a665f6e3Stephen Smalley# Define the access vectors.
1352dd4e51d5c2a2dfc0bfdee9303269f5a665f6e3Stephen Smalley#
1362dd4e51d5c2a2dfc0bfdee9303269f5a665f6e3Stephen Smalley# class class_name [ inherits common_name ] { permission_name ... }
1372dd4e51d5c2a2dfc0bfdee9303269f5a665f6e3Stephen Smalley
1382dd4e51d5c2a2dfc0bfdee9303269f5a665f6e3Stephen Smalley
1392dd4e51d5c2a2dfc0bfdee9303269f5a665f6e3Stephen Smalley#
1402dd4e51d5c2a2dfc0bfdee9303269f5a665f6e3Stephen Smalley# Define the access vector interpretation for file-related objects.
1412dd4e51d5c2a2dfc0bfdee9303269f5a665f6e3Stephen Smalley#
1422dd4e51d5c2a2dfc0bfdee9303269f5a665f6e3Stephen Smalley
1432dd4e51d5c2a2dfc0bfdee9303269f5a665f6e3Stephen Smalleyclass filesystem
1442dd4e51d5c2a2dfc0bfdee9303269f5a665f6e3Stephen Smalley{
1452dd4e51d5c2a2dfc0bfdee9303269f5a665f6e3Stephen Smalley	mount
1462dd4e51d5c2a2dfc0bfdee9303269f5a665f6e3Stephen Smalley	remount
1472dd4e51d5c2a2dfc0bfdee9303269f5a665f6e3Stephen Smalley	unmount
1482dd4e51d5c2a2dfc0bfdee9303269f5a665f6e3Stephen Smalley	getattr
1492dd4e51d5c2a2dfc0bfdee9303269f5a665f6e3Stephen Smalley	relabelfrom
1502dd4e51d5c2a2dfc0bfdee9303269f5a665f6e3Stephen Smalley	relabelto
1512dd4e51d5c2a2dfc0bfdee9303269f5a665f6e3Stephen Smalley	associate
1522dd4e51d5c2a2dfc0bfdee9303269f5a665f6e3Stephen Smalley	quotamod
1532dd4e51d5c2a2dfc0bfdee9303269f5a665f6e3Stephen Smalley	quotaget
1542dd4e51d5c2a2dfc0bfdee9303269f5a665f6e3Stephen Smalley}
1552dd4e51d5c2a2dfc0bfdee9303269f5a665f6e3Stephen Smalley
1562dd4e51d5c2a2dfc0bfdee9303269f5a665f6e3Stephen Smalleyclass dir
1572dd4e51d5c2a2dfc0bfdee9303269f5a665f6e3Stephen Smalleyinherits file
1582dd4e51d5c2a2dfc0bfdee9303269f5a665f6e3Stephen Smalley{
1592dd4e51d5c2a2dfc0bfdee9303269f5a665f6e3Stephen Smalley	add_name
1602dd4e51d5c2a2dfc0bfdee9303269f5a665f6e3Stephen Smalley	remove_name
1612dd4e51d5c2a2dfc0bfdee9303269f5a665f6e3Stephen Smalley	reparent
1622dd4e51d5c2a2dfc0bfdee9303269f5a665f6e3Stephen Smalley	search
1632dd4e51d5c2a2dfc0bfdee9303269f5a665f6e3Stephen Smalley	rmdir
1642dd4e51d5c2a2dfc0bfdee9303269f5a665f6e3Stephen Smalley	open
1652dd4e51d5c2a2dfc0bfdee9303269f5a665f6e3Stephen Smalley	audit_access
1662dd4e51d5c2a2dfc0bfdee9303269f5a665f6e3Stephen Smalley	execmod
1672dd4e51d5c2a2dfc0bfdee9303269f5a665f6e3Stephen Smalley}
1682dd4e51d5c2a2dfc0bfdee9303269f5a665f6e3Stephen Smalley
1692dd4e51d5c2a2dfc0bfdee9303269f5a665f6e3Stephen Smalleyclass file
1702dd4e51d5c2a2dfc0bfdee9303269f5a665f6e3Stephen Smalleyinherits file
1712dd4e51d5c2a2dfc0bfdee9303269f5a665f6e3Stephen Smalley{
1722dd4e51d5c2a2dfc0bfdee9303269f5a665f6e3Stephen Smalley	execute_no_trans
1732dd4e51d5c2a2dfc0bfdee9303269f5a665f6e3Stephen Smalley	entrypoint
1742dd4e51d5c2a2dfc0bfdee9303269f5a665f6e3Stephen Smalley	execmod
1752dd4e51d5c2a2dfc0bfdee9303269f5a665f6e3Stephen Smalley	open
1762dd4e51d5c2a2dfc0bfdee9303269f5a665f6e3Stephen Smalley	audit_access
1772dd4e51d5c2a2dfc0bfdee9303269f5a665f6e3Stephen Smalley}
1782dd4e51d5c2a2dfc0bfdee9303269f5a665f6e3Stephen Smalley
1792dd4e51d5c2a2dfc0bfdee9303269f5a665f6e3Stephen Smalleyclass lnk_file
1802dd4e51d5c2a2dfc0bfdee9303269f5a665f6e3Stephen Smalleyinherits file
1812dd4e51d5c2a2dfc0bfdee9303269f5a665f6e3Stephen Smalley{
1822dd4e51d5c2a2dfc0bfdee9303269f5a665f6e3Stephen Smalley	open
1832dd4e51d5c2a2dfc0bfdee9303269f5a665f6e3Stephen Smalley	audit_access
1842dd4e51d5c2a2dfc0bfdee9303269f5a665f6e3Stephen Smalley	execmod
1852dd4e51d5c2a2dfc0bfdee9303269f5a665f6e3Stephen Smalley}
1862dd4e51d5c2a2dfc0bfdee9303269f5a665f6e3Stephen Smalley
1872dd4e51d5c2a2dfc0bfdee9303269f5a665f6e3Stephen Smalleyclass chr_file
1882dd4e51d5c2a2dfc0bfdee9303269f5a665f6e3Stephen Smalleyinherits file
1892dd4e51d5c2a2dfc0bfdee9303269f5a665f6e3Stephen Smalley{
1902dd4e51d5c2a2dfc0bfdee9303269f5a665f6e3Stephen Smalley	execute_no_trans
1912dd4e51d5c2a2dfc0bfdee9303269f5a665f6e3Stephen Smalley	entrypoint
1922dd4e51d5c2a2dfc0bfdee9303269f5a665f6e3Stephen Smalley	execmod
1932dd4e51d5c2a2dfc0bfdee9303269f5a665f6e3Stephen Smalley	open
1942dd4e51d5c2a2dfc0bfdee9303269f5a665f6e3Stephen Smalley	audit_access
1952dd4e51d5c2a2dfc0bfdee9303269f5a665f6e3Stephen Smalley}
1962dd4e51d5c2a2dfc0bfdee9303269f5a665f6e3Stephen Smalley
1972dd4e51d5c2a2dfc0bfdee9303269f5a665f6e3Stephen Smalleyclass blk_file
1982dd4e51d5c2a2dfc0bfdee9303269f5a665f6e3Stephen Smalleyinherits file
1992dd4e51d5c2a2dfc0bfdee9303269f5a665f6e3Stephen Smalley{
2002dd4e51d5c2a2dfc0bfdee9303269f5a665f6e3Stephen Smalley	open
2012dd4e51d5c2a2dfc0bfdee9303269f5a665f6e3Stephen Smalley	audit_access
2022dd4e51d5c2a2dfc0bfdee9303269f5a665f6e3Stephen Smalley	execmod
2032dd4e51d5c2a2dfc0bfdee9303269f5a665f6e3Stephen Smalley}
2042dd4e51d5c2a2dfc0bfdee9303269f5a665f6e3Stephen Smalley
2052dd4e51d5c2a2dfc0bfdee9303269f5a665f6e3Stephen Smalleyclass sock_file
2062dd4e51d5c2a2dfc0bfdee9303269f5a665f6e3Stephen Smalleyinherits file
2072dd4e51d5c2a2dfc0bfdee9303269f5a665f6e3Stephen Smalley{
2082dd4e51d5c2a2dfc0bfdee9303269f5a665f6e3Stephen Smalley	open
2092dd4e51d5c2a2dfc0bfdee9303269f5a665f6e3Stephen Smalley	audit_access
2102dd4e51d5c2a2dfc0bfdee9303269f5a665f6e3Stephen Smalley	execmod
2112dd4e51d5c2a2dfc0bfdee9303269f5a665f6e3Stephen Smalley}
2122dd4e51d5c2a2dfc0bfdee9303269f5a665f6e3Stephen Smalley
2132dd4e51d5c2a2dfc0bfdee9303269f5a665f6e3Stephen Smalleyclass fifo_file
2142dd4e51d5c2a2dfc0bfdee9303269f5a665f6e3Stephen Smalleyinherits file
2152dd4e51d5c2a2dfc0bfdee9303269f5a665f6e3Stephen Smalley{
2162dd4e51d5c2a2dfc0bfdee9303269f5a665f6e3Stephen Smalley	open
2172dd4e51d5c2a2dfc0bfdee9303269f5a665f6e3Stephen Smalley	audit_access
2182dd4e51d5c2a2dfc0bfdee9303269f5a665f6e3Stephen Smalley	execmod
2192dd4e51d5c2a2dfc0bfdee9303269f5a665f6e3Stephen Smalley}
2202dd4e51d5c2a2dfc0bfdee9303269f5a665f6e3Stephen Smalley
2212dd4e51d5c2a2dfc0bfdee9303269f5a665f6e3Stephen Smalleyclass fd
2222dd4e51d5c2a2dfc0bfdee9303269f5a665f6e3Stephen Smalley{
2232dd4e51d5c2a2dfc0bfdee9303269f5a665f6e3Stephen Smalley	use
2242dd4e51d5c2a2dfc0bfdee9303269f5a665f6e3Stephen Smalley}
2252dd4e51d5c2a2dfc0bfdee9303269f5a665f6e3Stephen Smalley
2262dd4e51d5c2a2dfc0bfdee9303269f5a665f6e3Stephen Smalley
2272dd4e51d5c2a2dfc0bfdee9303269f5a665f6e3Stephen Smalley#
2282dd4e51d5c2a2dfc0bfdee9303269f5a665f6e3Stephen Smalley# Define the access vector interpretation for network-related objects.
2292dd4e51d5c2a2dfc0bfdee9303269f5a665f6e3Stephen Smalley#
2302dd4e51d5c2a2dfc0bfdee9303269f5a665f6e3Stephen Smalley
2312dd4e51d5c2a2dfc0bfdee9303269f5a665f6e3Stephen Smalleyclass socket
2322dd4e51d5c2a2dfc0bfdee9303269f5a665f6e3Stephen Smalleyinherits socket
2332dd4e51d5c2a2dfc0bfdee9303269f5a665f6e3Stephen Smalley
2342dd4e51d5c2a2dfc0bfdee9303269f5a665f6e3Stephen Smalleyclass tcp_socket
2352dd4e51d5c2a2dfc0bfdee9303269f5a665f6e3Stephen Smalleyinherits socket
2362dd4e51d5c2a2dfc0bfdee9303269f5a665f6e3Stephen Smalley{
2372dd4e51d5c2a2dfc0bfdee9303269f5a665f6e3Stephen Smalley	node_bind
2382dd4e51d5c2a2dfc0bfdee9303269f5a665f6e3Stephen Smalley	name_connect
2392dd4e51d5c2a2dfc0bfdee9303269f5a665f6e3Stephen Smalley}
2402dd4e51d5c2a2dfc0bfdee9303269f5a665f6e3Stephen Smalley
2412dd4e51d5c2a2dfc0bfdee9303269f5a665f6e3Stephen Smalleyclass udp_socket
2422dd4e51d5c2a2dfc0bfdee9303269f5a665f6e3Stephen Smalleyinherits socket
2432dd4e51d5c2a2dfc0bfdee9303269f5a665f6e3Stephen Smalley{
2442dd4e51d5c2a2dfc0bfdee9303269f5a665f6e3Stephen Smalley	node_bind
2452dd4e51d5c2a2dfc0bfdee9303269f5a665f6e3Stephen Smalley}
2462dd4e51d5c2a2dfc0bfdee9303269f5a665f6e3Stephen Smalley
2472dd4e51d5c2a2dfc0bfdee9303269f5a665f6e3Stephen Smalleyclass rawip_socket
2482dd4e51d5c2a2dfc0bfdee9303269f5a665f6e3Stephen Smalleyinherits socket
2492dd4e51d5c2a2dfc0bfdee9303269f5a665f6e3Stephen Smalley{
2502dd4e51d5c2a2dfc0bfdee9303269f5a665f6e3Stephen Smalley	node_bind
2512dd4e51d5c2a2dfc0bfdee9303269f5a665f6e3Stephen Smalley}
2522dd4e51d5c2a2dfc0bfdee9303269f5a665f6e3Stephen Smalley
2532dd4e51d5c2a2dfc0bfdee9303269f5a665f6e3Stephen Smalleyclass node
2542dd4e51d5c2a2dfc0bfdee9303269f5a665f6e3Stephen Smalley{
2552dd4e51d5c2a2dfc0bfdee9303269f5a665f6e3Stephen Smalley	recvfrom
2562dd4e51d5c2a2dfc0bfdee9303269f5a665f6e3Stephen Smalley	sendto
2572dd4e51d5c2a2dfc0bfdee9303269f5a665f6e3Stephen Smalley}
2582dd4e51d5c2a2dfc0bfdee9303269f5a665f6e3Stephen Smalley
2592dd4e51d5c2a2dfc0bfdee9303269f5a665f6e3Stephen Smalleyclass netif
2602dd4e51d5c2a2dfc0bfdee9303269f5a665f6e3Stephen Smalley{
2612dd4e51d5c2a2dfc0bfdee9303269f5a665f6e3Stephen Smalley	ingress
2622dd4e51d5c2a2dfc0bfdee9303269f5a665f6e3Stephen Smalley	egress
2632dd4e51d5c2a2dfc0bfdee9303269f5a665f6e3Stephen Smalley}
2642dd4e51d5c2a2dfc0bfdee9303269f5a665f6e3Stephen Smalley
2652dd4e51d5c2a2dfc0bfdee9303269f5a665f6e3Stephen Smalleyclass netlink_socket
2662dd4e51d5c2a2dfc0bfdee9303269f5a665f6e3Stephen Smalleyinherits socket
2672dd4e51d5c2a2dfc0bfdee9303269f5a665f6e3Stephen Smalley
2682dd4e51d5c2a2dfc0bfdee9303269f5a665f6e3Stephen Smalleyclass packet_socket
2692dd4e51d5c2a2dfc0bfdee9303269f5a665f6e3Stephen Smalleyinherits socket
2702dd4e51d5c2a2dfc0bfdee9303269f5a665f6e3Stephen Smalley
2712dd4e51d5c2a2dfc0bfdee9303269f5a665f6e3Stephen Smalleyclass key_socket
2722dd4e51d5c2a2dfc0bfdee9303269f5a665f6e3Stephen Smalleyinherits socket
2732dd4e51d5c2a2dfc0bfdee9303269f5a665f6e3Stephen Smalley
2742dd4e51d5c2a2dfc0bfdee9303269f5a665f6e3Stephen Smalleyclass unix_stream_socket
2752dd4e51d5c2a2dfc0bfdee9303269f5a665f6e3Stephen Smalleyinherits socket
2762dd4e51d5c2a2dfc0bfdee9303269f5a665f6e3Stephen Smalley{
2772dd4e51d5c2a2dfc0bfdee9303269f5a665f6e3Stephen Smalley	connectto
2782dd4e51d5c2a2dfc0bfdee9303269f5a665f6e3Stephen Smalley}
2792dd4e51d5c2a2dfc0bfdee9303269f5a665f6e3Stephen Smalley
2802dd4e51d5c2a2dfc0bfdee9303269f5a665f6e3Stephen Smalleyclass unix_dgram_socket
2812dd4e51d5c2a2dfc0bfdee9303269f5a665f6e3Stephen Smalleyinherits socket
2822dd4e51d5c2a2dfc0bfdee9303269f5a665f6e3Stephen Smalley
2832dd4e51d5c2a2dfc0bfdee9303269f5a665f6e3Stephen Smalley#
2842dd4e51d5c2a2dfc0bfdee9303269f5a665f6e3Stephen Smalley# Define the access vector interpretation for process-related objects
2852dd4e51d5c2a2dfc0bfdee9303269f5a665f6e3Stephen Smalley#
2862dd4e51d5c2a2dfc0bfdee9303269f5a665f6e3Stephen Smalley
2872dd4e51d5c2a2dfc0bfdee9303269f5a665f6e3Stephen Smalleyclass process
2882dd4e51d5c2a2dfc0bfdee9303269f5a665f6e3Stephen Smalley{
2892dd4e51d5c2a2dfc0bfdee9303269f5a665f6e3Stephen Smalley	fork
2902dd4e51d5c2a2dfc0bfdee9303269f5a665f6e3Stephen Smalley	transition
2912dd4e51d5c2a2dfc0bfdee9303269f5a665f6e3Stephen Smalley	sigchld # commonly granted from child to parent
2922dd4e51d5c2a2dfc0bfdee9303269f5a665f6e3Stephen Smalley	sigkill # cannot be caught or ignored
2932dd4e51d5c2a2dfc0bfdee9303269f5a665f6e3Stephen Smalley	sigstop # cannot be caught or ignored
2942dd4e51d5c2a2dfc0bfdee9303269f5a665f6e3Stephen Smalley	signull # for kill(pid, 0)
2952dd4e51d5c2a2dfc0bfdee9303269f5a665f6e3Stephen Smalley	signal  # all other signals
2962dd4e51d5c2a2dfc0bfdee9303269f5a665f6e3Stephen Smalley	ptrace
2972dd4e51d5c2a2dfc0bfdee9303269f5a665f6e3Stephen Smalley	getsched
2982dd4e51d5c2a2dfc0bfdee9303269f5a665f6e3Stephen Smalley	setsched
2992dd4e51d5c2a2dfc0bfdee9303269f5a665f6e3Stephen Smalley	getsession
3002dd4e51d5c2a2dfc0bfdee9303269f5a665f6e3Stephen Smalley	getpgid
3012dd4e51d5c2a2dfc0bfdee9303269f5a665f6e3Stephen Smalley	setpgid
3022dd4e51d5c2a2dfc0bfdee9303269f5a665f6e3Stephen Smalley	getcap
3032dd4e51d5c2a2dfc0bfdee9303269f5a665f6e3Stephen Smalley	setcap
3042dd4e51d5c2a2dfc0bfdee9303269f5a665f6e3Stephen Smalley	share
3052dd4e51d5c2a2dfc0bfdee9303269f5a665f6e3Stephen Smalley	getattr
3062dd4e51d5c2a2dfc0bfdee9303269f5a665f6e3Stephen Smalley	setexec
3072dd4e51d5c2a2dfc0bfdee9303269f5a665f6e3Stephen Smalley	setfscreate
3082dd4e51d5c2a2dfc0bfdee9303269f5a665f6e3Stephen Smalley	noatsecure
3092dd4e51d5c2a2dfc0bfdee9303269f5a665f6e3Stephen Smalley	siginh
3102dd4e51d5c2a2dfc0bfdee9303269f5a665f6e3Stephen Smalley	setrlimit
3112dd4e51d5c2a2dfc0bfdee9303269f5a665f6e3Stephen Smalley	rlimitinh
3122dd4e51d5c2a2dfc0bfdee9303269f5a665f6e3Stephen Smalley	dyntransition
3132dd4e51d5c2a2dfc0bfdee9303269f5a665f6e3Stephen Smalley	setcurrent
3142dd4e51d5c2a2dfc0bfdee9303269f5a665f6e3Stephen Smalley	execmem
3152dd4e51d5c2a2dfc0bfdee9303269f5a665f6e3Stephen Smalley	execstack
3162dd4e51d5c2a2dfc0bfdee9303269f5a665f6e3Stephen Smalley	execheap
3172dd4e51d5c2a2dfc0bfdee9303269f5a665f6e3Stephen Smalley	setkeycreate
3182dd4e51d5c2a2dfc0bfdee9303269f5a665f6e3Stephen Smalley	setsockcreate
31991a3eeac8fac333af4997f9fe5e5c7f454c7f336Stephen Smalley	getrlimit
3202dd4e51d5c2a2dfc0bfdee9303269f5a665f6e3Stephen Smalley}
3212dd4e51d5c2a2dfc0bfdee9303269f5a665f6e3Stephen Smalley
3222dd4e51d5c2a2dfc0bfdee9303269f5a665f6e3Stephen Smalley
3232dd4e51d5c2a2dfc0bfdee9303269f5a665f6e3Stephen Smalley#
3242dd4e51d5c2a2dfc0bfdee9303269f5a665f6e3Stephen Smalley# Define the access vector interpretation for ipc-related objects
3252dd4e51d5c2a2dfc0bfdee9303269f5a665f6e3Stephen Smalley#
3262dd4e51d5c2a2dfc0bfdee9303269f5a665f6e3Stephen Smalley
3272dd4e51d5c2a2dfc0bfdee9303269f5a665f6e3Stephen Smalleyclass ipc
3282dd4e51d5c2a2dfc0bfdee9303269f5a665f6e3Stephen Smalleyinherits ipc
3292dd4e51d5c2a2dfc0bfdee9303269f5a665f6e3Stephen Smalley
3302dd4e51d5c2a2dfc0bfdee9303269f5a665f6e3Stephen Smalleyclass sem
3312dd4e51d5c2a2dfc0bfdee9303269f5a665f6e3Stephen Smalleyinherits ipc
3322dd4e51d5c2a2dfc0bfdee9303269f5a665f6e3Stephen Smalley
3332dd4e51d5c2a2dfc0bfdee9303269f5a665f6e3Stephen Smalleyclass msgq
3342dd4e51d5c2a2dfc0bfdee9303269f5a665f6e3Stephen Smalleyinherits ipc
3352dd4e51d5c2a2dfc0bfdee9303269f5a665f6e3Stephen Smalley{
3362dd4e51d5c2a2dfc0bfdee9303269f5a665f6e3Stephen Smalley	enqueue
3372dd4e51d5c2a2dfc0bfdee9303269f5a665f6e3Stephen Smalley}
3382dd4e51d5c2a2dfc0bfdee9303269f5a665f6e3Stephen Smalley
3392dd4e51d5c2a2dfc0bfdee9303269f5a665f6e3Stephen Smalleyclass msg
3402dd4e51d5c2a2dfc0bfdee9303269f5a665f6e3Stephen Smalley{
3412dd4e51d5c2a2dfc0bfdee9303269f5a665f6e3Stephen Smalley	send
3422dd4e51d5c2a2dfc0bfdee9303269f5a665f6e3Stephen Smalley	receive
3432dd4e51d5c2a2dfc0bfdee9303269f5a665f6e3Stephen Smalley}
3442dd4e51d5c2a2dfc0bfdee9303269f5a665f6e3Stephen Smalley
3452dd4e51d5c2a2dfc0bfdee9303269f5a665f6e3Stephen Smalleyclass shm
3462dd4e51d5c2a2dfc0bfdee9303269f5a665f6e3Stephen Smalleyinherits ipc
3472dd4e51d5c2a2dfc0bfdee9303269f5a665f6e3Stephen Smalley{
3482dd4e51d5c2a2dfc0bfdee9303269f5a665f6e3Stephen Smalley	lock
3492dd4e51d5c2a2dfc0bfdee9303269f5a665f6e3Stephen Smalley}
3502dd4e51d5c2a2dfc0bfdee9303269f5a665f6e3Stephen Smalley
3512dd4e51d5c2a2dfc0bfdee9303269f5a665f6e3Stephen Smalley
3522dd4e51d5c2a2dfc0bfdee9303269f5a665f6e3Stephen Smalley#
3532dd4e51d5c2a2dfc0bfdee9303269f5a665f6e3Stephen Smalley# Define the access vector interpretation for the security server.
3542dd4e51d5c2a2dfc0bfdee9303269f5a665f6e3Stephen Smalley#
3552dd4e51d5c2a2dfc0bfdee9303269f5a665f6e3Stephen Smalley
3562dd4e51d5c2a2dfc0bfdee9303269f5a665f6e3Stephen Smalleyclass security
3572dd4e51d5c2a2dfc0bfdee9303269f5a665f6e3Stephen Smalley{
3582dd4e51d5c2a2dfc0bfdee9303269f5a665f6e3Stephen Smalley	compute_av
3592dd4e51d5c2a2dfc0bfdee9303269f5a665f6e3Stephen Smalley	compute_create
3602dd4e51d5c2a2dfc0bfdee9303269f5a665f6e3Stephen Smalley	compute_member
3612dd4e51d5c2a2dfc0bfdee9303269f5a665f6e3Stephen Smalley	check_context
3622dd4e51d5c2a2dfc0bfdee9303269f5a665f6e3Stephen Smalley	load_policy
3632dd4e51d5c2a2dfc0bfdee9303269f5a665f6e3Stephen Smalley	compute_relabel
3642dd4e51d5c2a2dfc0bfdee9303269f5a665f6e3Stephen Smalley	compute_user
3652dd4e51d5c2a2dfc0bfdee9303269f5a665f6e3Stephen Smalley	setenforce     # was avc_toggle in system class
3662dd4e51d5c2a2dfc0bfdee9303269f5a665f6e3Stephen Smalley	setbool
3672dd4e51d5c2a2dfc0bfdee9303269f5a665f6e3Stephen Smalley	setsecparam
3682dd4e51d5c2a2dfc0bfdee9303269f5a665f6e3Stephen Smalley	setcheckreqprot
3692dd4e51d5c2a2dfc0bfdee9303269f5a665f6e3Stephen Smalley	read_policy
3702dd4e51d5c2a2dfc0bfdee9303269f5a665f6e3Stephen Smalley}
3712dd4e51d5c2a2dfc0bfdee9303269f5a665f6e3Stephen Smalley
3722dd4e51d5c2a2dfc0bfdee9303269f5a665f6e3Stephen Smalley
3732dd4e51d5c2a2dfc0bfdee9303269f5a665f6e3Stephen Smalley#
3742dd4e51d5c2a2dfc0bfdee9303269f5a665f6e3Stephen Smalley# Define the access vector interpretation for system operations.
3752dd4e51d5c2a2dfc0bfdee9303269f5a665f6e3Stephen Smalley#
3762dd4e51d5c2a2dfc0bfdee9303269f5a665f6e3Stephen Smalley
3772dd4e51d5c2a2dfc0bfdee9303269f5a665f6e3Stephen Smalleyclass system
3782dd4e51d5c2a2dfc0bfdee9303269f5a665f6e3Stephen Smalley{
3792dd4e51d5c2a2dfc0bfdee9303269f5a665f6e3Stephen Smalley	ipc_info
3802dd4e51d5c2a2dfc0bfdee9303269f5a665f6e3Stephen Smalley	syslog_read
3812dd4e51d5c2a2dfc0bfdee9303269f5a665f6e3Stephen Smalley	syslog_mod
3822dd4e51d5c2a2dfc0bfdee9303269f5a665f6e3Stephen Smalley	syslog_console
3832dd4e51d5c2a2dfc0bfdee9303269f5a665f6e3Stephen Smalley	module_request
384a16b05892a9e9ed949c2cf22147e206e5c0b296eJeff Vander Stoep	module_load
3852dd4e51d5c2a2dfc0bfdee9303269f5a665f6e3Stephen Smalley}
3862dd4e51d5c2a2dfc0bfdee9303269f5a665f6e3Stephen Smalley
3872dd4e51d5c2a2dfc0bfdee9303269f5a665f6e3Stephen Smalley#
3888a003607064804307201d0738e1e284442f9826bStephen Smalley# Define the access vector interpretation for controlling capabilities
3892dd4e51d5c2a2dfc0bfdee9303269f5a665f6e3Stephen Smalley#
3902dd4e51d5c2a2dfc0bfdee9303269f5a665f6e3Stephen Smalley
3912dd4e51d5c2a2dfc0bfdee9303269f5a665f6e3Stephen Smalleyclass capability
3928a003607064804307201d0738e1e284442f9826bStephen Smalleyinherits cap
3932dd4e51d5c2a2dfc0bfdee9303269f5a665f6e3Stephen Smalley
3942dd4e51d5c2a2dfc0bfdee9303269f5a665f6e3Stephen Smalleyclass capability2
3958a003607064804307201d0738e1e284442f9826bStephen Smalleyinherits cap2
3962dd4e51d5c2a2dfc0bfdee9303269f5a665f6e3Stephen Smalley
3972dd4e51d5c2a2dfc0bfdee9303269f5a665f6e3Stephen Smalley#
3982dd4e51d5c2a2dfc0bfdee9303269f5a665f6e3Stephen Smalley# Extended Netlink classes
3992dd4e51d5c2a2dfc0bfdee9303269f5a665f6e3Stephen Smalley#
4002dd4e51d5c2a2dfc0bfdee9303269f5a665f6e3Stephen Smalleyclass netlink_route_socket
4012dd4e51d5c2a2dfc0bfdee9303269f5a665f6e3Stephen Smalleyinherits socket
4022dd4e51d5c2a2dfc0bfdee9303269f5a665f6e3Stephen Smalley{
4032dd4e51d5c2a2dfc0bfdee9303269f5a665f6e3Stephen Smalley	nlmsg_read
4042dd4e51d5c2a2dfc0bfdee9303269f5a665f6e3Stephen Smalley	nlmsg_write
4052dd4e51d5c2a2dfc0bfdee9303269f5a665f6e3Stephen Smalley}
4062dd4e51d5c2a2dfc0bfdee9303269f5a665f6e3Stephen Smalley
4072dd4e51d5c2a2dfc0bfdee9303269f5a665f6e3Stephen Smalleyclass netlink_tcpdiag_socket
4082dd4e51d5c2a2dfc0bfdee9303269f5a665f6e3Stephen Smalleyinherits socket
4092dd4e51d5c2a2dfc0bfdee9303269f5a665f6e3Stephen Smalley{
4102dd4e51d5c2a2dfc0bfdee9303269f5a665f6e3Stephen Smalley	nlmsg_read
4112dd4e51d5c2a2dfc0bfdee9303269f5a665f6e3Stephen Smalley	nlmsg_write
4122dd4e51d5c2a2dfc0bfdee9303269f5a665f6e3Stephen Smalley}
4132dd4e51d5c2a2dfc0bfdee9303269f5a665f6e3Stephen Smalley
4142dd4e51d5c2a2dfc0bfdee9303269f5a665f6e3Stephen Smalleyclass netlink_nflog_socket
4152dd4e51d5c2a2dfc0bfdee9303269f5a665f6e3Stephen Smalleyinherits socket
4162dd4e51d5c2a2dfc0bfdee9303269f5a665f6e3Stephen Smalley
4172dd4e51d5c2a2dfc0bfdee9303269f5a665f6e3Stephen Smalleyclass netlink_xfrm_socket
4182dd4e51d5c2a2dfc0bfdee9303269f5a665f6e3Stephen Smalleyinherits socket
4192dd4e51d5c2a2dfc0bfdee9303269f5a665f6e3Stephen Smalley{
4202dd4e51d5c2a2dfc0bfdee9303269f5a665f6e3Stephen Smalley	nlmsg_read
4212dd4e51d5c2a2dfc0bfdee9303269f5a665f6e3Stephen Smalley	nlmsg_write
4222dd4e51d5c2a2dfc0bfdee9303269f5a665f6e3Stephen Smalley}
4232dd4e51d5c2a2dfc0bfdee9303269f5a665f6e3Stephen Smalley
4242dd4e51d5c2a2dfc0bfdee9303269f5a665f6e3Stephen Smalleyclass netlink_selinux_socket
4252dd4e51d5c2a2dfc0bfdee9303269f5a665f6e3Stephen Smalleyinherits socket
4262dd4e51d5c2a2dfc0bfdee9303269f5a665f6e3Stephen Smalley
4272dd4e51d5c2a2dfc0bfdee9303269f5a665f6e3Stephen Smalleyclass netlink_audit_socket
4282dd4e51d5c2a2dfc0bfdee9303269f5a665f6e3Stephen Smalleyinherits socket
4292dd4e51d5c2a2dfc0bfdee9303269f5a665f6e3Stephen Smalley{
4302dd4e51d5c2a2dfc0bfdee9303269f5a665f6e3Stephen Smalley	nlmsg_read
4312dd4e51d5c2a2dfc0bfdee9303269f5a665f6e3Stephen Smalley	nlmsg_write
4322dd4e51d5c2a2dfc0bfdee9303269f5a665f6e3Stephen Smalley	nlmsg_relay
4332dd4e51d5c2a2dfc0bfdee9303269f5a665f6e3Stephen Smalley	nlmsg_readpriv
4342dd4e51d5c2a2dfc0bfdee9303269f5a665f6e3Stephen Smalley	nlmsg_tty_audit
4352dd4e51d5c2a2dfc0bfdee9303269f5a665f6e3Stephen Smalley}
4362dd4e51d5c2a2dfc0bfdee9303269f5a665f6e3Stephen Smalley
4372dd4e51d5c2a2dfc0bfdee9303269f5a665f6e3Stephen Smalleyclass netlink_dnrt_socket
4382dd4e51d5c2a2dfc0bfdee9303269f5a665f6e3Stephen Smalleyinherits socket
4392dd4e51d5c2a2dfc0bfdee9303269f5a665f6e3Stephen Smalley
4402dd4e51d5c2a2dfc0bfdee9303269f5a665f6e3Stephen Smalley# Define the access vector interpretation for controlling
4412dd4e51d5c2a2dfc0bfdee9303269f5a665f6e3Stephen Smalley# access to IPSec network data by association
4422dd4e51d5c2a2dfc0bfdee9303269f5a665f6e3Stephen Smalley#
4432dd4e51d5c2a2dfc0bfdee9303269f5a665f6e3Stephen Smalleyclass association
4442dd4e51d5c2a2dfc0bfdee9303269f5a665f6e3Stephen Smalley{
4452dd4e51d5c2a2dfc0bfdee9303269f5a665f6e3Stephen Smalley	sendto
4462dd4e51d5c2a2dfc0bfdee9303269f5a665f6e3Stephen Smalley	recvfrom
4472dd4e51d5c2a2dfc0bfdee9303269f5a665f6e3Stephen Smalley	setcontext
4482dd4e51d5c2a2dfc0bfdee9303269f5a665f6e3Stephen Smalley	polmatch
4492dd4e51d5c2a2dfc0bfdee9303269f5a665f6e3Stephen Smalley}
4502dd4e51d5c2a2dfc0bfdee9303269f5a665f6e3Stephen Smalley
4512dd4e51d5c2a2dfc0bfdee9303269f5a665f6e3Stephen Smalley# Updated Netlink class for KOBJECT_UEVENT family.
4522dd4e51d5c2a2dfc0bfdee9303269f5a665f6e3Stephen Smalleyclass netlink_kobject_uevent_socket
4532dd4e51d5c2a2dfc0bfdee9303269f5a665f6e3Stephen Smalleyinherits socket
4542dd4e51d5c2a2dfc0bfdee9303269f5a665f6e3Stephen Smalley
4552dd4e51d5c2a2dfc0bfdee9303269f5a665f6e3Stephen Smalleyclass appletalk_socket
4562dd4e51d5c2a2dfc0bfdee9303269f5a665f6e3Stephen Smalleyinherits socket
4572dd4e51d5c2a2dfc0bfdee9303269f5a665f6e3Stephen Smalley
4582dd4e51d5c2a2dfc0bfdee9303269f5a665f6e3Stephen Smalleyclass packet
4592dd4e51d5c2a2dfc0bfdee9303269f5a665f6e3Stephen Smalley{
4602dd4e51d5c2a2dfc0bfdee9303269f5a665f6e3Stephen Smalley	send
4612dd4e51d5c2a2dfc0bfdee9303269f5a665f6e3Stephen Smalley	recv
4622dd4e51d5c2a2dfc0bfdee9303269f5a665f6e3Stephen Smalley	relabelto
4632dd4e51d5c2a2dfc0bfdee9303269f5a665f6e3Stephen Smalley	flow_in		# deprecated
4642dd4e51d5c2a2dfc0bfdee9303269f5a665f6e3Stephen Smalley	flow_out	# deprecated
4652dd4e51d5c2a2dfc0bfdee9303269f5a665f6e3Stephen Smalley	forward_in
4662dd4e51d5c2a2dfc0bfdee9303269f5a665f6e3Stephen Smalley	forward_out
4672dd4e51d5c2a2dfc0bfdee9303269f5a665f6e3Stephen Smalley}
4682dd4e51d5c2a2dfc0bfdee9303269f5a665f6e3Stephen Smalley
4692dd4e51d5c2a2dfc0bfdee9303269f5a665f6e3Stephen Smalleyclass key
4702dd4e51d5c2a2dfc0bfdee9303269f5a665f6e3Stephen Smalley{
4712dd4e51d5c2a2dfc0bfdee9303269f5a665f6e3Stephen Smalley	view
4722dd4e51d5c2a2dfc0bfdee9303269f5a665f6e3Stephen Smalley	read
4732dd4e51d5c2a2dfc0bfdee9303269f5a665f6e3Stephen Smalley	write
4742dd4e51d5c2a2dfc0bfdee9303269f5a665f6e3Stephen Smalley	search
4752dd4e51d5c2a2dfc0bfdee9303269f5a665f6e3Stephen Smalley	link
4762dd4e51d5c2a2dfc0bfdee9303269f5a665f6e3Stephen Smalley	setattr
4772dd4e51d5c2a2dfc0bfdee9303269f5a665f6e3Stephen Smalley	create
4782dd4e51d5c2a2dfc0bfdee9303269f5a665f6e3Stephen Smalley}
4792dd4e51d5c2a2dfc0bfdee9303269f5a665f6e3Stephen Smalley
4802dd4e51d5c2a2dfc0bfdee9303269f5a665f6e3Stephen Smalleyclass dccp_socket
4812dd4e51d5c2a2dfc0bfdee9303269f5a665f6e3Stephen Smalleyinherits socket
4822dd4e51d5c2a2dfc0bfdee9303269f5a665f6e3Stephen Smalley{
4832dd4e51d5c2a2dfc0bfdee9303269f5a665f6e3Stephen Smalley	node_bind
4842dd4e51d5c2a2dfc0bfdee9303269f5a665f6e3Stephen Smalley	name_connect
4852dd4e51d5c2a2dfc0bfdee9303269f5a665f6e3Stephen Smalley}
4862dd4e51d5c2a2dfc0bfdee9303269f5a665f6e3Stephen Smalley
4872dd4e51d5c2a2dfc0bfdee9303269f5a665f6e3Stephen Smalleyclass memprotect
4882dd4e51d5c2a2dfc0bfdee9303269f5a665f6e3Stephen Smalley{
4892dd4e51d5c2a2dfc0bfdee9303269f5a665f6e3Stephen Smalley	mmap_zero
4902dd4e51d5c2a2dfc0bfdee9303269f5a665f6e3Stephen Smalley}
4912dd4e51d5c2a2dfc0bfdee9303269f5a665f6e3Stephen Smalley
4922dd4e51d5c2a2dfc0bfdee9303269f5a665f6e3Stephen Smalley# network peer labels
4932dd4e51d5c2a2dfc0bfdee9303269f5a665f6e3Stephen Smalleyclass peer
4942dd4e51d5c2a2dfc0bfdee9303269f5a665f6e3Stephen Smalley{
4952dd4e51d5c2a2dfc0bfdee9303269f5a665f6e3Stephen Smalley	recv
4962dd4e51d5c2a2dfc0bfdee9303269f5a665f6e3Stephen Smalley}
4972dd4e51d5c2a2dfc0bfdee9303269f5a665f6e3Stephen Smalley
4982dd4e51d5c2a2dfc0bfdee9303269f5a665f6e3Stephen Smalleyclass kernel_service
4992dd4e51d5c2a2dfc0bfdee9303269f5a665f6e3Stephen Smalley{
5002dd4e51d5c2a2dfc0bfdee9303269f5a665f6e3Stephen Smalley	use_as_override
5012dd4e51d5c2a2dfc0bfdee9303269f5a665f6e3Stephen Smalley	create_files_as
5022dd4e51d5c2a2dfc0bfdee9303269f5a665f6e3Stephen Smalley}
5032dd4e51d5c2a2dfc0bfdee9303269f5a665f6e3Stephen Smalley
5042dd4e51d5c2a2dfc0bfdee9303269f5a665f6e3Stephen Smalleyclass tun_socket
5052dd4e51d5c2a2dfc0bfdee9303269f5a665f6e3Stephen Smalleyinherits socket
506d7af45d3741648c45560797a5b6f02dec784668fNick Kralevich{
507d7af45d3741648c45560797a5b6f02dec784668fNick Kralevich	attach_queue
508d7af45d3741648c45560797a5b6f02dec784668fNick Kralevich}
5092dd4e51d5c2a2dfc0bfdee9303269f5a665f6e3Stephen Smalley
5102dd4e51d5c2a2dfc0bfdee9303269f5a665f6e3Stephen Smalleyclass binder
5112dd4e51d5c2a2dfc0bfdee9303269f5a665f6e3Stephen Smalley{
5122dd4e51d5c2a2dfc0bfdee9303269f5a665f6e3Stephen Smalley	impersonate
5132dd4e51d5c2a2dfc0bfdee9303269f5a665f6e3Stephen Smalley	call
5142dd4e51d5c2a2dfc0bfdee9303269f5a665f6e3Stephen Smalley	set_context_mgr
5152dd4e51d5c2a2dfc0bfdee9303269f5a665f6e3Stephen Smalley	transfer
5162dd4e51d5c2a2dfc0bfdee9303269f5a665f6e3Stephen Smalley}
5172dd4e51d5c2a2dfc0bfdee9303269f5a665f6e3Stephen Smalley
51801d95c23ab8c14d72e4ce98b3dda64ce81ab6306Stephen Smalleyclass netlink_iscsi_socket
51901d95c23ab8c14d72e4ce98b3dda64ce81ab6306Stephen Smalleyinherits socket
52001d95c23ab8c14d72e4ce98b3dda64ce81ab6306Stephen Smalley
52101d95c23ab8c14d72e4ce98b3dda64ce81ab6306Stephen Smalleyclass netlink_fib_lookup_socket
52201d95c23ab8c14d72e4ce98b3dda64ce81ab6306Stephen Smalleyinherits socket
52301d95c23ab8c14d72e4ce98b3dda64ce81ab6306Stephen Smalley
52401d95c23ab8c14d72e4ce98b3dda64ce81ab6306Stephen Smalleyclass netlink_connector_socket
52501d95c23ab8c14d72e4ce98b3dda64ce81ab6306Stephen Smalleyinherits socket
52601d95c23ab8c14d72e4ce98b3dda64ce81ab6306Stephen Smalley
52701d95c23ab8c14d72e4ce98b3dda64ce81ab6306Stephen Smalleyclass netlink_netfilter_socket
52801d95c23ab8c14d72e4ce98b3dda64ce81ab6306Stephen Smalleyinherits socket
52901d95c23ab8c14d72e4ce98b3dda64ce81ab6306Stephen Smalley
53001d95c23ab8c14d72e4ce98b3dda64ce81ab6306Stephen Smalleyclass netlink_generic_socket
53101d95c23ab8c14d72e4ce98b3dda64ce81ab6306Stephen Smalleyinherits socket
53201d95c23ab8c14d72e4ce98b3dda64ce81ab6306Stephen Smalley
53301d95c23ab8c14d72e4ce98b3dda64ce81ab6306Stephen Smalleyclass netlink_scsitransport_socket
53401d95c23ab8c14d72e4ce98b3dda64ce81ab6306Stephen Smalleyinherits socket
53501d95c23ab8c14d72e4ce98b3dda64ce81ab6306Stephen Smalley
53601d95c23ab8c14d72e4ce98b3dda64ce81ab6306Stephen Smalleyclass netlink_rdma_socket
53701d95c23ab8c14d72e4ce98b3dda64ce81ab6306Stephen Smalleyinherits socket
53801d95c23ab8c14d72e4ce98b3dda64ce81ab6306Stephen Smalley
53901d95c23ab8c14d72e4ce98b3dda64ce81ab6306Stephen Smalleyclass netlink_crypto_socket
54001d95c23ab8c14d72e4ce98b3dda64ce81ab6306Stephen Smalleyinherits socket
54101d95c23ab8c14d72e4ce98b3dda64ce81ab6306Stephen Smalley
5428a003607064804307201d0738e1e284442f9826bStephen Smalley#
5438a003607064804307201d0738e1e284442f9826bStephen Smalley# Define the access vector interpretation for controlling capabilities
5448a003607064804307201d0738e1e284442f9826bStephen Smalley# in user namespaces
5458a003607064804307201d0738e1e284442f9826bStephen Smalley#
5468a003607064804307201d0738e1e284442f9826bStephen Smalley
5478a003607064804307201d0738e1e284442f9826bStephen Smalleyclass cap_userns
5488a003607064804307201d0738e1e284442f9826bStephen Smalleyinherits cap
5498a003607064804307201d0738e1e284442f9826bStephen Smalley
5508a003607064804307201d0738e1e284442f9826bStephen Smalleyclass cap2_userns
5518a003607064804307201d0738e1e284442f9826bStephen Smalleyinherits cap2
5528a003607064804307201d0738e1e284442f9826bStephen Smalley
553431bdd9f2f344ecde4cd3fe0109bd70eab0a394cStephen Smalley
554431bdd9f2f344ecde4cd3fe0109bd70eab0a394cStephen Smalley#
555431bdd9f2f344ecde4cd3fe0109bd70eab0a394cStephen Smalley# Define the access vector interpretation for the new socket classes
556431bdd9f2f344ecde4cd3fe0109bd70eab0a394cStephen Smalley# enabled by the extended_socket_class policy capability.
557431bdd9f2f344ecde4cd3fe0109bd70eab0a394cStephen Smalley#
558431bdd9f2f344ecde4cd3fe0109bd70eab0a394cStephen Smalley
559431bdd9f2f344ecde4cd3fe0109bd70eab0a394cStephen Smalley#
560431bdd9f2f344ecde4cd3fe0109bd70eab0a394cStephen Smalley# The next two classes were previously mapped to rawip_socket and therefore
561431bdd9f2f344ecde4cd3fe0109bd70eab0a394cStephen Smalley# have the same definition as rawip_socket (until further permissions
562431bdd9f2f344ecde4cd3fe0109bd70eab0a394cStephen Smalley# are defined).
563431bdd9f2f344ecde4cd3fe0109bd70eab0a394cStephen Smalley#
564431bdd9f2f344ecde4cd3fe0109bd70eab0a394cStephen Smalleyclass sctp_socket
565431bdd9f2f344ecde4cd3fe0109bd70eab0a394cStephen Smalleyinherits socket
566431bdd9f2f344ecde4cd3fe0109bd70eab0a394cStephen Smalley{
567431bdd9f2f344ecde4cd3fe0109bd70eab0a394cStephen Smalley	node_bind
568431bdd9f2f344ecde4cd3fe0109bd70eab0a394cStephen Smalley}
569431bdd9f2f344ecde4cd3fe0109bd70eab0a394cStephen Smalley
570431bdd9f2f344ecde4cd3fe0109bd70eab0a394cStephen Smalleyclass icmp_socket
571431bdd9f2f344ecde4cd3fe0109bd70eab0a394cStephen Smalleyinherits socket
572431bdd9f2f344ecde4cd3fe0109bd70eab0a394cStephen Smalley{
573431bdd9f2f344ecde4cd3fe0109bd70eab0a394cStephen Smalley	node_bind
574431bdd9f2f344ecde4cd3fe0109bd70eab0a394cStephen Smalley}
575431bdd9f2f344ecde4cd3fe0109bd70eab0a394cStephen Smalley
576431bdd9f2f344ecde4cd3fe0109bd70eab0a394cStephen Smalley#
577431bdd9f2f344ecde4cd3fe0109bd70eab0a394cStephen Smalley# The remaining network socket classes were previously
578431bdd9f2f344ecde4cd3fe0109bd70eab0a394cStephen Smalley# mapped to the socket class and therefore have the
579431bdd9f2f344ecde4cd3fe0109bd70eab0a394cStephen Smalley# same definition as socket.
580431bdd9f2f344ecde4cd3fe0109bd70eab0a394cStephen Smalley#
581431bdd9f2f344ecde4cd3fe0109bd70eab0a394cStephen Smalley
582431bdd9f2f344ecde4cd3fe0109bd70eab0a394cStephen Smalleyclass ax25_socket
583431bdd9f2f344ecde4cd3fe0109bd70eab0a394cStephen Smalleyinherits socket
584431bdd9f2f344ecde4cd3fe0109bd70eab0a394cStephen Smalley
585431bdd9f2f344ecde4cd3fe0109bd70eab0a394cStephen Smalleyclass ipx_socket
586431bdd9f2f344ecde4cd3fe0109bd70eab0a394cStephen Smalleyinherits socket
587431bdd9f2f344ecde4cd3fe0109bd70eab0a394cStephen Smalley
588431bdd9f2f344ecde4cd3fe0109bd70eab0a394cStephen Smalleyclass netrom_socket
589431bdd9f2f344ecde4cd3fe0109bd70eab0a394cStephen Smalleyinherits socket
590431bdd9f2f344ecde4cd3fe0109bd70eab0a394cStephen Smalley
591431bdd9f2f344ecde4cd3fe0109bd70eab0a394cStephen Smalleyclass atmpvc_socket
592431bdd9f2f344ecde4cd3fe0109bd70eab0a394cStephen Smalleyinherits socket
593431bdd9f2f344ecde4cd3fe0109bd70eab0a394cStephen Smalley
594431bdd9f2f344ecde4cd3fe0109bd70eab0a394cStephen Smalleyclass x25_socket
595431bdd9f2f344ecde4cd3fe0109bd70eab0a394cStephen Smalleyinherits socket
596431bdd9f2f344ecde4cd3fe0109bd70eab0a394cStephen Smalley
597431bdd9f2f344ecde4cd3fe0109bd70eab0a394cStephen Smalleyclass rose_socket
598431bdd9f2f344ecde4cd3fe0109bd70eab0a394cStephen Smalleyinherits socket
599431bdd9f2f344ecde4cd3fe0109bd70eab0a394cStephen Smalley
600431bdd9f2f344ecde4cd3fe0109bd70eab0a394cStephen Smalleyclass decnet_socket
601431bdd9f2f344ecde4cd3fe0109bd70eab0a394cStephen Smalleyinherits socket
602431bdd9f2f344ecde4cd3fe0109bd70eab0a394cStephen Smalley
603431bdd9f2f344ecde4cd3fe0109bd70eab0a394cStephen Smalleyclass atmsvc_socket
604431bdd9f2f344ecde4cd3fe0109bd70eab0a394cStephen Smalleyinherits socket
605431bdd9f2f344ecde4cd3fe0109bd70eab0a394cStephen Smalley
606431bdd9f2f344ecde4cd3fe0109bd70eab0a394cStephen Smalleyclass rds_socket
607431bdd9f2f344ecde4cd3fe0109bd70eab0a394cStephen Smalleyinherits socket
608431bdd9f2f344ecde4cd3fe0109bd70eab0a394cStephen Smalley
609431bdd9f2f344ecde4cd3fe0109bd70eab0a394cStephen Smalleyclass irda_socket
610431bdd9f2f344ecde4cd3fe0109bd70eab0a394cStephen Smalleyinherits socket
611431bdd9f2f344ecde4cd3fe0109bd70eab0a394cStephen Smalley
612431bdd9f2f344ecde4cd3fe0109bd70eab0a394cStephen Smalleyclass pppox_socket
613431bdd9f2f344ecde4cd3fe0109bd70eab0a394cStephen Smalleyinherits socket
614431bdd9f2f344ecde4cd3fe0109bd70eab0a394cStephen Smalley
615431bdd9f2f344ecde4cd3fe0109bd70eab0a394cStephen Smalleyclass llc_socket
616431bdd9f2f344ecde4cd3fe0109bd70eab0a394cStephen Smalleyinherits socket
617431bdd9f2f344ecde4cd3fe0109bd70eab0a394cStephen Smalley
618431bdd9f2f344ecde4cd3fe0109bd70eab0a394cStephen Smalleyclass can_socket
619431bdd9f2f344ecde4cd3fe0109bd70eab0a394cStephen Smalleyinherits socket
620431bdd9f2f344ecde4cd3fe0109bd70eab0a394cStephen Smalley
621431bdd9f2f344ecde4cd3fe0109bd70eab0a394cStephen Smalleyclass tipc_socket
622431bdd9f2f344ecde4cd3fe0109bd70eab0a394cStephen Smalleyinherits socket
623431bdd9f2f344ecde4cd3fe0109bd70eab0a394cStephen Smalley
624431bdd9f2f344ecde4cd3fe0109bd70eab0a394cStephen Smalleyclass bluetooth_socket
625431bdd9f2f344ecde4cd3fe0109bd70eab0a394cStephen Smalleyinherits socket
626431bdd9f2f344ecde4cd3fe0109bd70eab0a394cStephen Smalley
627431bdd9f2f344ecde4cd3fe0109bd70eab0a394cStephen Smalleyclass iucv_socket
628431bdd9f2f344ecde4cd3fe0109bd70eab0a394cStephen Smalleyinherits socket
629431bdd9f2f344ecde4cd3fe0109bd70eab0a394cStephen Smalley
630431bdd9f2f344ecde4cd3fe0109bd70eab0a394cStephen Smalleyclass rxrpc_socket
631431bdd9f2f344ecde4cd3fe0109bd70eab0a394cStephen Smalleyinherits socket
632431bdd9f2f344ecde4cd3fe0109bd70eab0a394cStephen Smalley
633431bdd9f2f344ecde4cd3fe0109bd70eab0a394cStephen Smalleyclass isdn_socket
634431bdd9f2f344ecde4cd3fe0109bd70eab0a394cStephen Smalleyinherits socket
635431bdd9f2f344ecde4cd3fe0109bd70eab0a394cStephen Smalley
636431bdd9f2f344ecde4cd3fe0109bd70eab0a394cStephen Smalleyclass phonet_socket
637431bdd9f2f344ecde4cd3fe0109bd70eab0a394cStephen Smalleyinherits socket
638431bdd9f2f344ecde4cd3fe0109bd70eab0a394cStephen Smalley
639431bdd9f2f344ecde4cd3fe0109bd70eab0a394cStephen Smalleyclass ieee802154_socket
640431bdd9f2f344ecde4cd3fe0109bd70eab0a394cStephen Smalleyinherits socket
641431bdd9f2f344ecde4cd3fe0109bd70eab0a394cStephen Smalley
642431bdd9f2f344ecde4cd3fe0109bd70eab0a394cStephen Smalleyclass caif_socket
643431bdd9f2f344ecde4cd3fe0109bd70eab0a394cStephen Smalleyinherits socket
644431bdd9f2f344ecde4cd3fe0109bd70eab0a394cStephen Smalley
645431bdd9f2f344ecde4cd3fe0109bd70eab0a394cStephen Smalleyclass alg_socket
646431bdd9f2f344ecde4cd3fe0109bd70eab0a394cStephen Smalleyinherits socket
647431bdd9f2f344ecde4cd3fe0109bd70eab0a394cStephen Smalley
648431bdd9f2f344ecde4cd3fe0109bd70eab0a394cStephen Smalleyclass nfc_socket
649431bdd9f2f344ecde4cd3fe0109bd70eab0a394cStephen Smalleyinherits socket
650431bdd9f2f344ecde4cd3fe0109bd70eab0a394cStephen Smalley
651431bdd9f2f344ecde4cd3fe0109bd70eab0a394cStephen Smalleyclass vsock_socket
652431bdd9f2f344ecde4cd3fe0109bd70eab0a394cStephen Smalleyinherits socket
653431bdd9f2f344ecde4cd3fe0109bd70eab0a394cStephen Smalley
654431bdd9f2f344ecde4cd3fe0109bd70eab0a394cStephen Smalleyclass kcm_socket
655431bdd9f2f344ecde4cd3fe0109bd70eab0a394cStephen Smalleyinherits socket
656431bdd9f2f344ecde4cd3fe0109bd70eab0a394cStephen Smalley
657431bdd9f2f344ecde4cd3fe0109bd70eab0a394cStephen Smalleyclass qipcrtr_socket
658431bdd9f2f344ecde4cd3fe0109bd70eab0a394cStephen Smalleyinherits socket
659431bdd9f2f344ecde4cd3fe0109bd70eab0a394cStephen Smalley
660124720a6976a69357522299afbe5591854e40775Stephen Smalleyclass property_service
661124720a6976a69357522299afbe5591854e40775Stephen Smalley{
662124720a6976a69357522299afbe5591854e40775Stephen Smalley	set
663124720a6976a69357522299afbe5591854e40775Stephen Smalley}
664f90c41f6e8d5c1266e154f46586a2ceb260f1be6Riley Spahn
665f90c41f6e8d5c1266e154f46586a2ceb260f1be6Riley Spahnclass service_manager
666f90c41f6e8d5c1266e154f46586a2ceb260f1be6Riley Spahn{
667f90c41f6e8d5c1266e154f46586a2ceb260f1be6Riley Spahn	add
668b8511e0d98880a683c276589ab7d8d7666b7f8c1Riley Spahn	find
669b8511e0d98880a683c276589ab7d8d7666b7f8c1Riley Spahn	list
670f90c41f6e8d5c1266e154f46586a2ceb260f1be6Riley Spahn}
6711196d2a5763c9a99be99ba81a4a29d938a83cc06Riley Spahn
6721196d2a5763c9a99be99ba81a4a29d938a83cc06Riley Spahnclass keystore_key
6731196d2a5763c9a99be99ba81a4a29d938a83cc06Riley Spahn{
674cbc8f796551151c0d9651500d5d9f116177a07dcChad Brubaker	get_state
6751196d2a5763c9a99be99ba81a4a29d938a83cc06Riley Spahn	get
6761196d2a5763c9a99be99ba81a4a29d938a83cc06Riley Spahn	insert
6771196d2a5763c9a99be99ba81a4a29d938a83cc06Riley Spahn	delete
6781196d2a5763c9a99be99ba81a4a29d938a83cc06Riley Spahn	exist
679cbc8f796551151c0d9651500d5d9f116177a07dcChad Brubaker	list
6801196d2a5763c9a99be99ba81a4a29d938a83cc06Riley Spahn	reset
6811196d2a5763c9a99be99ba81a4a29d938a83cc06Riley Spahn	password
6821196d2a5763c9a99be99ba81a4a29d938a83cc06Riley Spahn	lock
6831196d2a5763c9a99be99ba81a4a29d938a83cc06Riley Spahn	unlock
684cbc8f796551151c0d9651500d5d9f116177a07dcChad Brubaker	is_empty
6851196d2a5763c9a99be99ba81a4a29d938a83cc06Riley Spahn	sign
6861196d2a5763c9a99be99ba81a4a29d938a83cc06Riley Spahn	verify
6871196d2a5763c9a99be99ba81a4a29d938a83cc06Riley Spahn	grant
6881196d2a5763c9a99be99ba81a4a29d938a83cc06Riley Spahn	duplicate
6891196d2a5763c9a99be99ba81a4a29d938a83cc06Riley Spahn	clear_uid
6908927772caa421f1c9ccc80337527e039353d65ddChad Brubaker	add_auth
691520bb816b86fe36440767db6e2f05fb4e8a08f3eChad Brubaker	user_changed
6921196d2a5763c9a99be99ba81a4a29d938a83cc06Riley Spahn}
693ba992496f01e40a10d9749bb25b6498138e607fbStephen Smalley
69470f75ce9e5975df47d0ccb32660bb618c22ef181Riley Spahnclass drmservice {
69570f75ce9e5975df47d0ccb32660bb618c22ef181Riley Spahn	consumeRights
69670f75ce9e5975df47d0ccb32660bb618c22ef181Riley Spahn	setPlaybackStatus
69770f75ce9e5975df47d0ccb32660bb618c22ef181Riley Spahn	openDecryptSession
69870f75ce9e5975df47d0ccb32660bb618c22ef181Riley Spahn	closeDecryptSession
69970f75ce9e5975df47d0ccb32660bb618c22ef181Riley Spahn	initializeDecryptUnit
70070f75ce9e5975df47d0ccb32660bb618c22ef181Riley Spahn	decrypt
70170f75ce9e5975df47d0ccb32660bb618c22ef181Riley Spahn	finalizeDecryptUnit
70270f75ce9e5975df47d0ccb32660bb618c22ef181Riley Spahn	pread
70370f75ce9e5975df47d0ccb32660bb618c22ef181Riley Spahn}
704