1 ##################################### 2 # Common groupings of object classes. 3 # 4 define(`capability_class_set', `{ capability capability2 }') 5 6 define(`devfile_class_set', `{ chr_file blk_file }') 7 define(`notdevfile_class_set', `{ file lnk_file sock_file fifo_file }') 8 define(`file_class_set', `{ devfile_class_set notdevfile_class_set }') 9 define(`dir_file_class_set', `{ dir file_class_set }') 10 11 define(`socket_class_set', `{ socket tcp_socket udp_socket rawip_socket netlink_socket packet_socket key_socket unix_stream_socket unix_dgram_socket appletalk_socket netlink_route_socket netlink_tcpdiag_socket netlink_nflog_socket netlink_xfrm_socket netlink_selinux_socket netlink_audit_socket netlink_dnrt_socket netlink_kobject_uevent_socket tun_socket netlink_iscsi_socket netlink_fib_lookup_socket netlink_connector_socket netlink_netfilter_socket netlink_generic_socket netlink_scsitransport_socket netlink_rdma_socket netlink_crypto_socket sctp_socket icmp_socket ax25_socket ipx_socket netrom_socket atmpvc_socket x25_socket rose_socket decnet_socket atmsvc_socket rds_socket irda_socket pppox_socket llc_socket can_socket tipc_socket bluetooth_socket iucv_socket rxrpc_socket isdn_socket phonet_socket ieee802154_socket caif_socket alg_socket nfc_socket vsock_socket kcm_socket qipcrtr_socket }') 12 define(`dgram_socket_class_set', `{ udp_socket unix_dgram_socket }') 13 define(`stream_socket_class_set', `{ tcp_socket unix_stream_socket }') 14 define(`unpriv_socket_class_set', `{ tcp_socket udp_socket unix_stream_socket unix_dgram_socket }') 15 16 define(`ipc_class_set', `{ sem msgq shm ipc }') 17 18 ##################################### 19 # Common groupings of permissions. 20 # 21 define(`x_file_perms', `{ getattr execute execute_no_trans }') 22 define(`r_file_perms', `{ getattr open read ioctl lock }') 23 define(`w_file_perms', `{ open append write lock }') 24 define(`rx_file_perms', `{ r_file_perms x_file_perms }') 25 define(`ra_file_perms', `{ r_file_perms append }') 26 define(`rw_file_perms', `{ r_file_perms w_file_perms }') 27 define(`rwx_file_perms', `{ rw_file_perms x_file_perms }') 28 define(`create_file_perms', `{ create rename setattr unlink rw_file_perms }') 29 30 define(`r_dir_perms', `{ open getattr read search ioctl lock }') 31 define(`w_dir_perms', `{ open search write add_name remove_name lock }') 32 define(`ra_dir_perms', `{ r_dir_perms add_name write }') 33 define(`rw_dir_perms', `{ r_dir_perms w_dir_perms }') 34 define(`create_dir_perms', `{ create reparent rename rmdir setattr rw_dir_perms }') 35 36 define(`r_ipc_perms', `{ getattr read associate unix_read }') 37 define(`w_ipc_perms', `{ write unix_write }') 38 define(`rw_ipc_perms', `{ r_ipc_perms w_ipc_perms }') 39 define(`create_ipc_perms', `{ create setattr destroy rw_ipc_perms }') 40 41 ##################################### 42 # Common socket permission sets. 43 define(`rw_socket_perms', `{ ioctl read getattr write setattr lock append bind connect getopt setopt shutdown }') 44 define(`rw_socket_perms_no_ioctl', `{ read getattr write setattr lock append bind connect getopt setopt shutdown }') 45 define(`create_socket_perms', `{ create rw_socket_perms }') 46 define(`create_socket_perms_no_ioctl', `{ create rw_socket_perms_no_ioctl }') 47 define(`rw_stream_socket_perms', `{ rw_socket_perms listen accept }') 48 define(`create_stream_socket_perms', `{ create rw_stream_socket_perms }') 49