## Reserve well-known ports in the RPC port range. ######################################## ## ## Execute a domain transition to run portreserve. ## ## ## ## Domain allowed to transition. ## ## # interface(`portreserve_domtrans',` gen_require(` type portreserve_t, portreserve_exec_t; ') domtrans_pattern($1, portreserve_exec_t, portreserve_t) ') ######################################## ## ## Execute portreserve in the portreserve domain. ## ## ## ## Domain allowed to transition. ## ## # interface(`portreserve_initrc_domtrans',` gen_require(` type portreserve_initrc_exec_t; ') init_labeled_script_domtrans($1, portreserve_initrc_exec_t) ') ####################################### ## ## Allow the specified domain to read ## portreserve etcuration files. ## ## ## ## Domain allowed access. ## ## ## # interface(`portreserve_read_config',` gen_require(` type portreserve_etc_t; ') files_search_etc($1) allow $1 portreserve_etc_t:dir list_dir_perms; read_files_pattern($1, portreserve_etc_t, portreserve_etc_t) read_lnk_files_pattern($1, portreserve_etc_t, portreserve_etc_t) ') ####################################### ## ## Allow the specified domain to manage ## portreserve etcuration files. ## ## ## ## Domain allowed access. ## ## # interface(`portreserve_manage_config',` gen_require(` type portreserve_etc_t; ') files_search_etc($1) manage_dirs_pattern($1, portreserve_etc_t, portreserve_etc_t) manage_files_pattern($1, portreserve_etc_t, portreserve_etc_t) read_lnk_files_pattern($1, portreserve_etc_t, portreserve_etc_t) ') ######################################## ## ## All of the rules required to administrate ## an portreserve environment. ## ## ## ## Domain allowed access. ## ## ## ## ## Role allowed access. ## ## ## # interface(`portreserve_admin',` gen_require(` type portreserve_t, portreserve_etc_t, portreserve_var_run_t; type portreserve_initrc_exec_t; ') allow $1 portreserve_t:process { ptrace signal_perms }; ps_process_pattern($1, portreserve_t) portreserve_initrc_domtrans($1) domain_system_change_exemption($1) role_transition $2 portreserve_initrc_exec_t system_r; allow $2 system_r; files_search_etc($1) admin_pattern($1, portreserve_etc_t) files_search_pids($1) admin_pattern($1, portreserve_var_run_t) ')