## Filesystem namespacing/polyinstantiation application. ######################################## ## ## Execute a domain transition to run seunshare. ## ## ## ## Domain allowed to transition. ## ## # interface(`seunshare_domtrans',` gen_require(` type seunshare_t, seunshare_exec_t; ') domtrans_pattern($1, seunshare_exec_t, seunshare_t) ') ######################################## ## ## Execute seunshare in the seunshare domain, and ## allow the specified role the seunshare domain. ## ## ## ## Domain allowed access. ## ## ## ## ## Role allowed access. ## ## # interface(`seunshare_run',` gen_require(` type seunshare_t; ') seunshare_domtrans($1) role $2 types seunshare_t; allow $1 seunshare_t:process signal_perms; ifdef(`hide_broken_symptoms', ` dontaudit seunshare_t $1:tcp_socket rw_socket_perms; dontaudit seunshare_t $1:udp_socket rw_socket_perms; dontaudit seunshare_t $1:unix_stream_socket rw_socket_perms; ') ') ######################################## ## ## Role access for seunshare ## ## ## ## Role allowed access. ## ## ## ## ## User domain for the role. ## ## # interface(`seunshare_role',` gen_require(` type seunshare_t; ') role $2 types seunshare_t; seunshare_domtrans($1) ps_process_pattern($2, seunshare_t) allow $2 seunshare_t:process signal; ')