## Spice agent for Linux. ######################################## ## ## Execute a domain transition to run vdagent. ## ## ## ## Domain allowed access. ## ## # interface(`vdagent_domtrans',` gen_require(` type vdagent_t, vdagent_exec_t; ') corecmd_search_bin($1) domtrans_pattern($1, vdagent_exec_t, vdagent_t) ') ##################################### ## ## Get attributes of vdagent executable files. ## ## ## ## Domain allowed access. ## ## # interface(`vdagent_getattr_exec_files',` gen_require(` type vdagent_exec_t; ') allow $1 vdagent_exec_t:file getattr_file_perms; ') ####################################### ## ## Get attributes of vdagent log files. ## ## ## ## Domain allowed access. ## ## # interface(`vdagent_getattr_log',` gen_require(` type vdagent_log_t; ') logging_search_logs($1) allow $1 vdagent_log_t:file getattr_file_perms; ') ######################################## ## ## Read vdagent pid files. ## ## ## ## Domain allowed access. ## ## # interface(`vdagent_read_pid_files',` gen_require(` type vdagent_var_run_t; ') files_search_pids($1) allow $1 vdagent_var_run_t:file read_file_perms; ') ##################################### ## ## Connect to vdagent with a unix ## domain stream socket. ## ## ## ## Domain allowed access. ## ## # interface(`vdagent_stream_connect',` gen_require(` type vdagent_var_run_t, vdagent_t; ') files_search_pids($1) stream_connect_pattern($1, vdagent_var_run_t, vdagent_var_run_t, vdagent_t) ') ######################################## ## ## All of the rules required to ## administrate an vdagent environment. ## ## ## ## Domain allowed access. ## ## ## ## ## Role allowed access. ## ## # interface(`vdagent_admin',` gen_require(` type vdagent_t, vdagent_var_run_t, vdagentd_initrc_exec_t; type vdagent_log_t; ') allow $1 vdagent_t:process signal_perms; ps_process_pattern($1, vdagent_t) tunable_policy(`deny_ptrace',`',` allow $1 vdagent_t:process ptrace; ') init_labeled_script_domtrans($1, vdagentd_initrc_exec_t) domain_system_change_exemption($1) role_transition $2 vdagentd_initrc_exec_t system_r; allow $2 system_r; logging_search_logs($1) admin_pattern($1, vdagent_log_t) files_search_pids($1) admin_pattern($1, vdagent_var_run_t) ')