# Copyright (C) 2005 Tresys Technology, LLC ######################################## ## ## ## Execute mount in the mount domain. ## ## ## The type of the process performing this action. ## ## ## # define(`mount_transition',` requires_block_template(`$0'_depend) allow $1 mount_exec_t:file { getattr read execute }; allow $1 mount_t:process transition; type_transition $1 mount_exec_t:process mount_t; dontaudit $1 mount_t:process { noatsecure siginh rlimitinh }; allow $1 mount_t:fd use; allow mount_t $1:fd use; allow mount_t $1:fifo_file rw_file_perms; allow mount_t $1:process sigchld; ') define(`mount_transition_depend',` type mount_t, mount_exec_t; class file { getattr read execute }; class process { transition noatsecure siginh rlimitinh sigchld }; class fd use; class fifo_file rw_file_perms; ') ######################################## ## ## ## Execute mount in the mount domain, and ## allow the specified role the mount domain, ## and use the caller's terminal. ## ## ## The type of the process performing this action. ## ## ## The role to be allowed the mount domain. ## ## ## The type of the terminal allow the mount domain to use. ## ## ## # define(`mount_transition_add_role_use_terminal',` requires_block_template(`$0'_depend) mount_transition($1) role $2 types mount_t; allow mount_t $3:chr_file { getattr read write ioctl }; ') define(`mount_transition_add_role_use_terminal_depend',` type mount_t; class chr_file { getattr read write ioctl }; ') ####################################### # # mount_use_file_descriptors(domain) # define(`mount_use_file_descriptors',` requires_block_template(`$0'_depend) allow $1 mount_t:fd use; ') define(`mount_use_file_descriptors_depend',` type mount_t; class fd use; ') ####################################### # # mount_send_nfs_client_request(domain) # define(`mount_send_nfs_client_request',` requires_block_template(`$0'_depend) allow $1 mount_t:udp_socket ioctl read getattr write setattr append bind connect getopt setopt shutdown; ') define(`mount_send_nfs_client_request_depend',` type mount_t; class udp_socket { ioctl read getattr write setattr append bind connect getopt setopt shutdown }; ')