Oreon-Lime-R2/selinux-policy/selinux-policy-bc228bd/selinux-policy-bc228bd0c249a9e4aa3dcf238c2b1bb138943b07/policy/modules/contrib/nx.if

112 lines
2.3 KiB
Text

## <summary>NX remote desktop.</summary>
########################################
## <summary>
## Transition to nx server.
## </summary>
## <param name="domain">
## <summary>
## Domain allowed to transition.
## </summary>
## </param>
#
interface(`nx_spec_domtrans_server',`
gen_require(`
type nx_server_t, nx_server_exec_t;
')
corecmd_search_bin($1)
spec_domtrans_pattern($1, nx_server_exec_t, nx_server_t)
')
########################################
## <summary>
## Read nx home directory content.
## </summary>
## <param name="domain">
## <summary>
## Domain allowed access.
## </summary>
## </param>
#
interface(`nx_read_home_files',`
gen_require(`
type nx_server_home_ssh_t, nx_server_var_lib_t;
')
files_search_var_lib($1)
allow $1 nx_server_var_lib_t:dir search_dir_perms;
read_files_pattern($1, nx_server_home_ssh_t, nx_server_home_ssh_t)
read_lnk_files_pattern($1, nx_server_home_ssh_t, nx_server_home_ssh_t)
')
########################################
## <summary>
## Search nx lib directories.
## </summary>
## <param name="domain">
## <summary>
## Domain allowed access.
## </summary>
## </param>
#
interface(`nx_search_var_lib',`
gen_require(`
type nx_server_var_lib_t;
')
files_search_var_lib($1)
allow $1 nx_server_var_lib_t:dir search_dir_perms;
')
########################################
## <summary>
## Create specified objects in nx lib
## directories with a private type.
## </summary>
## <param name="domain">
## <summary>
## Domain allowed access.
## </summary>
## </param>
## <param name="private type">
## <summary>
## The type of the object to be created.
## </summary>
## </param>
## <param name="object">
## <summary>
## The object class of the object being created.
## </summary>
## </param>
## <param name="name" optional="true">
## <summary>
## The name of the object being created.
## </summary>
## </param>
#
interface(`nx_var_lib_filetrans',`
gen_require(`
type nx_server_var_lib_t;
')
filetrans_pattern($1, nx_server_var_lib_t, $2, $3, $4)
')
########################################
## <summary>
## Transition to nx named content
## </summary>
## <param name="domain">
## <summary>
## Domain allowed access.
## </summary>
## </param>
#
interface(`nx_filetrans_named_content',`
gen_require(`
type nx_server_home_ssh_t, nx_server_var_lib_t;
')
filetrans_pattern($1, nx_server_var_lib_t, nx_server_home_ssh_t, dir, ".ssh")
')