## Xen hypervisor ######################################## ## ## Execute a domain transition to run xend. ## ## ## ## Domain allowed to transition. ## ## # interface(`xen_domtrans',` gen_require(` type xend_t, xend_exec_t; ') domain_auto_trans($1,xend_exec_t,xend_t) allow $1 xend_t:fd use; allow xend_t $1:fd use; allow xend_t $1:fifo_file rw_file_perms; allow xend_t $1:process sigchld; ') ######################################## ## ## Inherit and use xen file descriptors. ## ## ## ## Domain to not audit. ## ## # interface(`xen_use_fds',` gen_require(` type xend_t; ') allow $1 xend_t:fd use; ') ######################################## ## ## Do not audit attempts to inherit ## xen file descriptors. ## ## ## ## Domain to not audit. ## ## # interface(`xen_dontaudit_use_fds',` gen_require(` type xend_t; ') dontaudit $1 xend_t:fd use; ') ######################################## ## ## Allow the specified domain to append ## xend log files. ## ## ## ## Domain allowed to transition. ## ## # interface(`xen_append_log',` gen_require(` type var_log_t, xend_var_log_t; ') logging_search_logs($1) allow $1 xend_var_log_t:file { getattr append }; dontaudit $1 xend_var_log_t:file write; ') ######################################## ## ## Do not audit attempts to read and write ## Xen unix domain stream sockets. These ## are leaked file descriptors. ## ## ## ## Domain to not audit. ## ## # interface(`xen_dontaudit_rw_unix_stream_sockets',` gen_require(` type xend_t; ') dontaudit $1 xend_t:unix_stream_socket { read write }; ') ######################################## ## ## Connect to xenstored over an unix stream socket. ## ## ## ## Domain allowed access. ## ## # interface(`xen_stream_connect_xenstore',` gen_require(` type xenstored_t, xenstored_var_run_t; ') files_search_pids($1) allow $1 xenstored_var_run_t:dir search; allow $1 xenstored_var_run_t:sock_file { getattr write }; allow $1 xenstored_t:unix_stream_socket connectto; ') ######################################## ## ## Connect to xend over an unix domain stream socket. ## ## ## ## Domain allowed access. ## ## # interface(`xen_stream_connect',` gen_require(` type xend_t, xend_var_run_t; ') files_search_pids($1) allow $1 xend_var_run_t:dir search; allow $1 xend_var_run_t:sock_file { getattr write }; allow $1 xend_t:unix_stream_socket connectto; ') ######################################## ## ## Execute a domain transition to run xm. ## ## ## ## Domain allowed to transition. ## ## # interface(`xen_domtrans_xm',` gen_require(` type xm_t, xm_exec_t; ') domain_auto_trans($1,xm_exec_t,xm_t) allow xm_t $1:fd use; allow xm_t $1:fifo_file rw_file_perms; allow xm_t $1:process sigchld; ')