2005-07-05 20:59:51 +00:00
|
|
|
## <summary>The unconfined domain.</summary>
|
|
|
|
|
|
|
|
########################################
|
|
|
|
## <summary>
|
2006-02-06 22:47:46 +00:00
|
|
|
## Make the specified domain unconfined.
|
2005-07-05 20:59:51 +00:00
|
|
|
## </summary>
|
|
|
|
## <param name="domain">
|
2006-02-10 18:41:53 +00:00
|
|
|
## <summary>
|
2005-07-05 20:59:51 +00:00
|
|
|
## Domain to make unconfined.
|
2006-02-10 18:41:53 +00:00
|
|
|
## </summary>
|
2005-07-05 20:59:51 +00:00
|
|
|
## </param>
|
|
|
|
#
|
2006-02-06 22:47:46 +00:00
|
|
|
interface(`unconfined_domain_noaudit',`
|
2005-09-21 14:49:41 +00:00
|
|
|
gen_require(`
|
2007-10-02 16:04:50 +00:00
|
|
|
type unconfined_t;
|
2005-09-21 14:49:41 +00:00
|
|
|
class dbus all_dbus_perms;
|
|
|
|
class nscd all_nscd_perms;
|
|
|
|
class passwd all_passwd_perms;
|
|
|
|
')
|
2005-07-05 20:59:51 +00:00
|
|
|
|
|
|
|
# Use any Linux capability.
|
|
|
|
allow $1 self:capability *;
|
2006-12-12 20:08:08 +00:00
|
|
|
allow $1 self:fifo_file manage_fifo_file_perms;
|
2005-07-05 20:59:51 +00:00
|
|
|
|
|
|
|
# Transition to myself, to make get_ordered_context_list happy.
|
|
|
|
allow $1 self:process transition;
|
|
|
|
|
|
|
|
# Write access is for setting attributes under /proc/self/attr.
|
|
|
|
allow $1 self:file rw_file_perms;
|
|
|
|
|
|
|
|
# Userland object managers
|
|
|
|
allow $1 self:nscd *;
|
|
|
|
allow $1 self:dbus *;
|
|
|
|
allow $1 self:passwd *;
|
2007-02-16 23:01:42 +00:00
|
|
|
allow $1 self:association *;
|
2005-07-05 20:59:51 +00:00
|
|
|
|
|
|
|
kernel_unconfined($1)
|
2005-07-19 20:38:26 +00:00
|
|
|
corenet_unconfined($1)
|
2005-07-05 20:59:51 +00:00
|
|
|
dev_unconfined($1)
|
2005-12-13 20:38:19 +00:00
|
|
|
domain_unconfined($1)
|
2006-01-17 17:50:10 +00:00
|
|
|
domain_dontaudit_read_all_domains_state($1)
|
2006-08-29 02:41:00 +00:00
|
|
|
domain_dontaudit_ptrace_all_domains($1)
|
2005-12-13 20:38:19 +00:00
|
|
|
files_unconfined($1)
|
2005-07-05 20:59:51 +00:00
|
|
|
fs_unconfined($1)
|
|
|
|
selinux_unconfined($1)
|
|
|
|
|
2006-01-19 23:00:23 +00:00
|
|
|
tunable_policy(`allow_execheap',`
|
|
|
|
# Allow making the stack executable via mprotect.
|
|
|
|
allow $1 self:process execheap;
|
|
|
|
')
|
|
|
|
|
2005-07-05 20:59:51 +00:00
|
|
|
tunable_policy(`allow_execmem',`
|
2005-09-15 21:03:29 +00:00
|
|
|
# Allow making anonymous memory executable, e.g.
|
|
|
|
# for runtime-code generation or executable stack.
|
2005-07-05 20:59:51 +00:00
|
|
|
allow $1 self:process execmem;
|
|
|
|
')
|
|
|
|
|
2006-07-28 15:13:58 +00:00
|
|
|
tunable_policy(`allow_execstack',`
|
|
|
|
# Allow making the stack executable via mprotect;
|
|
|
|
# execstack implies execmem;
|
|
|
|
allow $1 self:process { execstack execmem };
|
2006-04-12 15:04:28 +00:00
|
|
|
# auditallow $1 self:process execstack;
|
2005-09-15 21:03:29 +00:00
|
|
|
')
|
|
|
|
|
2006-01-27 20:13:08 +00:00
|
|
|
|
2006-03-24 16:13:54 +00:00
|
|
|
optional_policy(`
|
2005-07-19 18:40:19 +00:00
|
|
|
auth_unconfined($1)
|
2005-07-05 20:59:51 +00:00
|
|
|
')
|
|
|
|
|
2006-03-24 16:13:54 +00:00
|
|
|
optional_policy(`
|
2005-09-21 14:49:41 +00:00
|
|
|
# Communicate via dbusd.
|
|
|
|
dbus_system_bus_unconfined($1)
|
|
|
|
')
|
|
|
|
|
2006-03-24 16:13:54 +00:00
|
|
|
optional_policy(`
|
2006-05-19 15:15:45 +00:00
|
|
|
# this is to handle execmod on shared
|
|
|
|
# libs with text relocations
|
2006-01-16 22:00:09 +00:00
|
|
|
libs_use_shared_libs($1)
|
|
|
|
')
|
|
|
|
|
2006-03-24 16:13:54 +00:00
|
|
|
optional_policy(`
|
2005-07-13 20:48:51 +00:00
|
|
|
nscd_unconfined($1)
|
|
|
|
')
|
|
|
|
|
2006-03-24 16:13:54 +00:00
|
|
|
optional_policy(`
|
2006-02-02 21:08:12 +00:00
|
|
|
seutil_create_bin_policy($1)
|
|
|
|
seutil_relabelto_bin_policy($1)
|
2005-07-05 20:59:51 +00:00
|
|
|
')
|
|
|
|
|
2006-03-24 16:13:54 +00:00
|
|
|
optional_policy(`
|
2005-07-05 20:59:51 +00:00
|
|
|
storage_unconfined($1)
|
|
|
|
')
|
|
|
|
')
|
2005-07-06 20:28:29 +00:00
|
|
|
|
2006-02-06 22:47:46 +00:00
|
|
|
########################################
|
|
|
|
## <summary>
|
|
|
|
## Make the specified domain unconfined and
|
|
|
|
## audit executable memory and executable heap
|
|
|
|
## usage.
|
|
|
|
## </summary>
|
|
|
|
## <param name="domain">
|
2006-02-10 18:41:53 +00:00
|
|
|
## <summary>
|
2006-02-06 22:47:46 +00:00
|
|
|
## Domain to make unconfined.
|
2006-02-10 18:41:53 +00:00
|
|
|
## </summary>
|
2006-02-06 22:47:46 +00:00
|
|
|
## </param>
|
|
|
|
#
|
|
|
|
interface(`unconfined_domain',`
|
|
|
|
unconfined_domain_noaudit($1)
|
|
|
|
|
|
|
|
tunable_policy(`allow_execheap',`
|
|
|
|
auditallow $1 self:process execheap;
|
|
|
|
')
|
|
|
|
|
2006-04-12 15:04:28 +00:00
|
|
|
# Turn off this audit for FC5
|
|
|
|
# tunable_policy(`allow_execmem',`
|
|
|
|
# auditallow $1 self:process execmem;
|
|
|
|
# ')
|
2006-02-06 22:47:46 +00:00
|
|
|
')
|
|
|
|
|
2007-10-02 16:04:50 +00:00
|
|
|
########################################
|
|
|
|
## <summary>
|
|
|
|
## Add an alias type to the unconfined domain. (Deprecated)
|
|
|
|
## </summary>
|
|
|
|
## <desc>
|
|
|
|
## <p>
|
|
|
|
## Add an alias type to the unconfined domain. (Deprecated)
|
|
|
|
## </p>
|
|
|
|
## <p>
|
|
|
|
## This is added to support targeted policy. Its
|
|
|
|
## use should be limited. It has no effect
|
|
|
|
## on the strict policy.
|
|
|
|
## </p>
|
|
|
|
## </desc>
|
|
|
|
## <param name="domain">
|
|
|
|
## <summary>
|
|
|
|
## New alias of the unconfined domain.
|
|
|
|
## </summary>
|
|
|
|
## </param>
|
|
|
|
#
|
|
|
|
interface(`unconfined_alias_domain',`
|
|
|
|
refpolicywarn(`$0($1) has been deprecated.')
|
|
|
|
')
|
|
|
|
|
|
|
|
########################################
|
|
|
|
## <summary>
|
|
|
|
## Add an alias type to the unconfined execmem
|
|
|
|
## program file type. (Deprecated)
|
|
|
|
## </summary>
|
|
|
|
## <desc>
|
|
|
|
## <p>
|
|
|
|
## Add an alias type to the unconfined execmem
|
|
|
|
## program file type. (Deprecated)
|
|
|
|
## </p>
|
|
|
|
## <p>
|
|
|
|
## This is added to support targeted policy. Its
|
|
|
|
## use should be limited. It has no effect
|
|
|
|
## on the strict policy.
|
|
|
|
## </p>
|
|
|
|
## </desc>
|
|
|
|
## <param name="domain">
|
|
|
|
## <summary>
|
|
|
|
## New alias of the unconfined execmem program type.
|
|
|
|
## </summary>
|
|
|
|
## </param>
|
|
|
|
#
|
|
|
|
interface(`unconfined_execmem_alias_program',`
|
|
|
|
refpolicywarn(`$0($1) has been deprecated.')
|
|
|
|
')
|
|
|
|
|
2005-07-12 20:34:24 +00:00
|
|
|
########################################
|
|
|
|
## <summary>
|
|
|
|
## Transition to the unconfined domain.
|
|
|
|
## </summary>
|
|
|
|
## <param name="domain">
|
2006-02-10 18:41:53 +00:00
|
|
|
## <summary>
|
2005-07-12 20:34:24 +00:00
|
|
|
## Domain allowed access.
|
2006-02-10 18:41:53 +00:00
|
|
|
## </summary>
|
2005-07-12 20:34:24 +00:00
|
|
|
## </param>
|
|
|
|
#
|
|
|
|
interface(`unconfined_domtrans',`
|
|
|
|
gen_require(`
|
|
|
|
type unconfined_t, unconfined_exec_t;
|
|
|
|
')
|
|
|
|
|
2006-12-12 20:08:08 +00:00
|
|
|
domtrans_pattern($1,unconfined_exec_t,unconfined_t)
|
2005-07-12 20:34:24 +00:00
|
|
|
')
|
|
|
|
|
2005-07-18 18:31:49 +00:00
|
|
|
########################################
|
2005-08-11 17:46:39 +00:00
|
|
|
## <summary>
|
2005-07-18 18:31:49 +00:00
|
|
|
## Execute specified programs in the unconfined domain.
|
2005-08-11 17:46:39 +00:00
|
|
|
## </summary>
|
2005-07-18 18:31:49 +00:00
|
|
|
## <param name="domain">
|
2006-02-10 18:41:53 +00:00
|
|
|
## <summary>
|
2005-07-18 18:31:49 +00:00
|
|
|
## The type of the process performing this action.
|
2006-02-10 18:41:53 +00:00
|
|
|
## </summary>
|
2005-07-18 18:31:49 +00:00
|
|
|
## </param>
|
|
|
|
## <param name="role">
|
2006-02-10 18:41:53 +00:00
|
|
|
## <summary>
|
2005-07-18 18:31:49 +00:00
|
|
|
## The role to allow the unconfined domain.
|
2006-02-10 18:41:53 +00:00
|
|
|
## </summary>
|
2005-07-18 18:31:49 +00:00
|
|
|
## </param>
|
|
|
|
## <param name="terminal">
|
2006-02-10 18:41:53 +00:00
|
|
|
## <summary>
|
2005-07-18 18:31:49 +00:00
|
|
|
## The type of the terminal allow the unconfined domain to use.
|
2006-02-10 18:41:53 +00:00
|
|
|
## </summary>
|
2005-07-18 18:31:49 +00:00
|
|
|
## </param>
|
|
|
|
#
|
|
|
|
interface(`unconfined_run',`
|
|
|
|
gen_require(`
|
|
|
|
type unconfined_t;
|
|
|
|
')
|
|
|
|
|
|
|
|
unconfined_domtrans($1)
|
|
|
|
role $2 types unconfined_t;
|
|
|
|
allow unconfined_t $3:chr_file rw_term_perms;
|
|
|
|
')
|
|
|
|
|
2005-07-06 20:28:29 +00:00
|
|
|
########################################
|
|
|
|
## <summary>
|
|
|
|
## Transition to the unconfined domain by executing a shell.
|
|
|
|
## </summary>
|
|
|
|
## <param name="domain">
|
2006-02-10 18:41:53 +00:00
|
|
|
## <summary>
|
2005-07-06 20:28:29 +00:00
|
|
|
## Domain allowed access.
|
2006-02-10 18:41:53 +00:00
|
|
|
## </summary>
|
2005-07-06 20:28:29 +00:00
|
|
|
## </param>
|
|
|
|
#
|
2005-07-08 20:44:57 +00:00
|
|
|
interface(`unconfined_shell_domtrans',`
|
2005-07-06 20:28:29 +00:00
|
|
|
gen_require(`
|
2005-07-12 20:34:24 +00:00
|
|
|
type unconfined_t;
|
2005-07-06 20:28:29 +00:00
|
|
|
')
|
|
|
|
|
2005-07-19 18:40:19 +00:00
|
|
|
corecmd_shell_domtrans($1,unconfined_t)
|
2006-12-12 20:08:08 +00:00
|
|
|
allow unconfined_t $1:fd use;
|
|
|
|
allow unconfined_t $1:fifo_file rw_file_perms;
|
|
|
|
allow unconfined_t $1:process sigchld;
|
2005-07-06 20:28:29 +00:00
|
|
|
')
|
|
|
|
|
2006-07-10 13:31:28 +00:00
|
|
|
########################################
|
|
|
|
## <summary>
|
|
|
|
## Allow unconfined to execute the specified program in
|
|
|
|
## the specified domain.
|
|
|
|
## </summary>
|
|
|
|
## <desc>
|
|
|
|
## <p>
|
|
|
|
## Allow unconfined to execute the specified program in
|
|
|
|
## the specified domain.
|
|
|
|
## </p>
|
|
|
|
## <p>
|
|
|
|
## This is a interface to support third party modules
|
|
|
|
## and its use is not allowed in upstream reference
|
|
|
|
## policy.
|
|
|
|
## </p>
|
|
|
|
## </desc>
|
|
|
|
## <param name="domain">
|
|
|
|
## <summary>
|
|
|
|
## Domain to execute in.
|
|
|
|
## </summary>
|
|
|
|
## </param>
|
|
|
|
## <param name="entry_file">
|
|
|
|
## <summary>
|
|
|
|
## Domain entry point file.
|
|
|
|
## </summary>
|
|
|
|
## </param>
|
|
|
|
#
|
|
|
|
interface(`unconfined_domtrans_to',`
|
|
|
|
gen_require(`
|
|
|
|
type unconfined_t;
|
|
|
|
')
|
|
|
|
|
2006-12-12 20:08:08 +00:00
|
|
|
domtrans_pattern(unconfined_t,$2,$1)
|
2006-07-10 13:31:28 +00:00
|
|
|
')
|
|
|
|
|
2005-07-06 20:28:29 +00:00
|
|
|
########################################
|
|
|
|
## <summary>
|
|
|
|
## Inherit file descriptors from the unconfined domain.
|
|
|
|
## </summary>
|
|
|
|
## <param name="domain">
|
2006-02-10 18:41:53 +00:00
|
|
|
## <summary>
|
2005-07-06 20:28:29 +00:00
|
|
|
## Domain allowed access.
|
2006-02-10 18:41:53 +00:00
|
|
|
## </summary>
|
2005-07-06 20:28:29 +00:00
|
|
|
## </param>
|
|
|
|
#
|
2006-03-02 23:41:11 +00:00
|
|
|
interface(`unconfined_use_fds',`
|
2005-07-06 20:28:29 +00:00
|
|
|
gen_require(`
|
|
|
|
type unconfined_t;
|
|
|
|
')
|
|
|
|
|
|
|
|
allow $1 unconfined_t:fd use;
|
|
|
|
')
|
|
|
|
|
|
|
|
########################################
|
|
|
|
## <summary>
|
|
|
|
## Send a SIGCHLD signal to the unconfined domain.
|
|
|
|
## </summary>
|
|
|
|
## <param name="domain">
|
2006-02-10 18:41:53 +00:00
|
|
|
## <summary>
|
2005-07-06 20:28:29 +00:00
|
|
|
## Domain allowed access.
|
2006-02-10 18:41:53 +00:00
|
|
|
## </summary>
|
2005-07-06 20:28:29 +00:00
|
|
|
## </param>
|
|
|
|
#
|
|
|
|
interface(`unconfined_sigchld',`
|
|
|
|
gen_require(`
|
|
|
|
type unconfined_t;
|
|
|
|
')
|
|
|
|
|
|
|
|
allow $1 unconfined_t:process sigchld;
|
|
|
|
')
|
|
|
|
|
2006-04-26 15:22:33 +00:00
|
|
|
########################################
|
|
|
|
## <summary>
|
|
|
|
## Send a SIGNULL signal to the unconfined domain.
|
|
|
|
## </summary>
|
|
|
|
## <param name="domain">
|
|
|
|
## <summary>
|
|
|
|
## Domain allowed access.
|
|
|
|
## </summary>
|
|
|
|
## </param>
|
|
|
|
#
|
|
|
|
interface(`unconfined_signull',`
|
|
|
|
gen_require(`
|
|
|
|
type unconfined_t;
|
|
|
|
')
|
|
|
|
|
|
|
|
allow $1 unconfined_t:process signull;
|
|
|
|
')
|
|
|
|
|
2005-11-18 18:38:37 +00:00
|
|
|
########################################
|
|
|
|
## <summary>
|
|
|
|
## Send generic signals to the unconfined domain.
|
|
|
|
## </summary>
|
|
|
|
## <param name="domain">
|
2006-02-10 18:41:53 +00:00
|
|
|
## <summary>
|
2005-11-18 18:38:37 +00:00
|
|
|
## Domain allowed access.
|
2006-02-10 18:41:53 +00:00
|
|
|
## </summary>
|
2005-11-18 18:38:37 +00:00
|
|
|
## </param>
|
|
|
|
#
|
|
|
|
interface(`unconfined_signal',`
|
|
|
|
gen_require(`
|
|
|
|
type unconfined_t;
|
|
|
|
')
|
|
|
|
|
|
|
|
allow $1 unconfined_t:process signal;
|
|
|
|
')
|
|
|
|
|
2005-12-02 22:06:05 +00:00
|
|
|
########################################
|
|
|
|
## <summary>
|
|
|
|
## Read unconfined domain unnamed pipes.
|
|
|
|
## </summary>
|
|
|
|
## <param name="domain">
|
2006-02-10 18:41:53 +00:00
|
|
|
## <summary>
|
2005-12-02 22:06:05 +00:00
|
|
|
## Domain allowed access.
|
2006-02-10 18:41:53 +00:00
|
|
|
## </summary>
|
2005-12-02 22:06:05 +00:00
|
|
|
## </param>
|
|
|
|
#
|
2006-02-02 21:08:12 +00:00
|
|
|
interface(`unconfined_read_pipes',`
|
2005-12-02 22:06:05 +00:00
|
|
|
gen_require(`
|
|
|
|
type unconfined_t;
|
|
|
|
')
|
|
|
|
|
2006-12-12 20:08:08 +00:00
|
|
|
allow $1 unconfined_t:fifo_file read_fifo_file_perms;
|
2005-12-02 22:06:05 +00:00
|
|
|
')
|
|
|
|
|
2005-10-26 16:00:13 +00:00
|
|
|
########################################
|
|
|
|
## <summary>
|
|
|
|
## Do not audit attempts to read unconfined domain unnamed pipes.
|
|
|
|
## </summary>
|
|
|
|
## <param name="domain">
|
2006-02-10 18:41:53 +00:00
|
|
|
## <summary>
|
2005-10-26 16:00:13 +00:00
|
|
|
## Domain allowed access.
|
2006-02-10 18:41:53 +00:00
|
|
|
## </summary>
|
2005-10-26 16:00:13 +00:00
|
|
|
## </param>
|
|
|
|
#
|
2006-02-02 21:08:12 +00:00
|
|
|
interface(`unconfined_dontaudit_read_pipes',`
|
2005-10-26 16:00:13 +00:00
|
|
|
gen_require(`
|
|
|
|
type unconfined_t;
|
|
|
|
')
|
|
|
|
|
|
|
|
dontaudit $1 unconfined_t:fifo_file read;
|
|
|
|
')
|
|
|
|
|
2005-07-06 20:28:29 +00:00
|
|
|
########################################
|
|
|
|
## <summary>
|
|
|
|
## Read and write unconfined domain unnamed pipes.
|
|
|
|
## </summary>
|
|
|
|
## <param name="domain">
|
2006-02-10 18:41:53 +00:00
|
|
|
## <summary>
|
2005-07-06 20:28:29 +00:00
|
|
|
## Domain allowed access.
|
2006-02-10 18:41:53 +00:00
|
|
|
## </summary>
|
2005-07-06 20:28:29 +00:00
|
|
|
## </param>
|
|
|
|
#
|
2006-02-02 21:08:12 +00:00
|
|
|
interface(`unconfined_rw_pipes',`
|
2005-07-06 20:28:29 +00:00
|
|
|
gen_require(`
|
|
|
|
type unconfined_t;
|
|
|
|
')
|
|
|
|
|
2006-12-12 20:08:08 +00:00
|
|
|
allow $1 unconfined_t:fifo_file rw_fifo_file_perms;
|
2005-07-06 20:28:29 +00:00
|
|
|
')
|
|
|
|
|
2006-12-04 20:10:56 +00:00
|
|
|
########################################
|
|
|
|
## <summary>
|
|
|
|
## Do not audit attempts to read and write
|
|
|
|
## unconfined domain unnamed pipes.
|
|
|
|
## </summary>
|
|
|
|
## <param name="domain">
|
|
|
|
## <summary>
|
|
|
|
## Domain to not audit.
|
|
|
|
## </summary>
|
|
|
|
## </param>
|
|
|
|
#
|
|
|
|
interface(`unconfined_dontaudit_rw_pipes',`
|
|
|
|
gen_require(`
|
|
|
|
type unconfined_t;
|
|
|
|
')
|
|
|
|
|
|
|
|
dontaudit $1 unconfined_t:fifo_file rw_file_perms;
|
|
|
|
')
|
|
|
|
|
2006-03-29 14:31:10 +00:00
|
|
|
########################################
|
|
|
|
## <summary>
|
|
|
|
## Connect to the unconfined domain using
|
|
|
|
## a unix domain stream socket.
|
|
|
|
## </summary>
|
|
|
|
## <param name="domain">
|
|
|
|
## <summary>
|
|
|
|
## Domain allowed access.
|
|
|
|
## </summary>
|
|
|
|
## </param>
|
|
|
|
#
|
|
|
|
interface(`unconfined_stream_connect',`
|
|
|
|
gen_require(`
|
|
|
|
type unconfined_t;
|
|
|
|
')
|
|
|
|
|
|
|
|
allow $1 unconfined_t:unix_stream_socket connectto;
|
|
|
|
')
|
|
|
|
|
2005-07-08 20:44:57 +00:00
|
|
|
########################################
|
|
|
|
## <summary>
|
|
|
|
## Do not audit attempts to read or write
|
|
|
|
## unconfined domain tcp sockets.
|
|
|
|
## </summary>
|
|
|
|
## <desc>
|
|
|
|
## <p>
|
|
|
|
## Do not audit attempts to read or write
|
|
|
|
## unconfined domain tcp sockets.
|
|
|
|
## </p>
|
|
|
|
## <p>
|
|
|
|
## This interface was added due to a broken
|
|
|
|
## symptom in ldconfig.
|
|
|
|
## </p>
|
|
|
|
## </desc>
|
|
|
|
## <param name="domain">
|
2006-02-10 18:41:53 +00:00
|
|
|
## <summary>
|
2005-07-08 20:44:57 +00:00
|
|
|
## Domain to not audit.
|
2006-02-10 18:41:53 +00:00
|
|
|
## </summary>
|
2005-07-08 20:44:57 +00:00
|
|
|
## </param>
|
|
|
|
#
|
2006-02-02 21:08:12 +00:00
|
|
|
interface(`unconfined_dontaudit_rw_tcp_sockets',`
|
2005-07-08 20:44:57 +00:00
|
|
|
gen_require(`
|
|
|
|
type unconfined_t;
|
|
|
|
')
|
|
|
|
|
|
|
|
dontaudit $1 unconfined_t:tcp_socket { read write };
|
|
|
|
')
|
|
|
|
|
2006-06-21 21:02:49 +00:00
|
|
|
########################################
|
|
|
|
## <summary>
|
|
|
|
## Create keys for the unconfined domain.
|
|
|
|
## </summary>
|
|
|
|
## <param name="domain">
|
|
|
|
## <summary>
|
|
|
|
## Domain allowed access.
|
|
|
|
## </summary>
|
|
|
|
## </param>
|
|
|
|
#
|
|
|
|
interface(`unconfined_create_keys',`
|
|
|
|
gen_require(`
|
|
|
|
type unconfined_t;
|
|
|
|
')
|
|
|
|
|
|
|
|
allow $1 unconfined_t:key create;
|
|
|
|
')
|
|
|
|
|
2005-12-02 22:06:05 +00:00
|
|
|
########################################
|
|
|
|
## <summary>
|
|
|
|
## Send messages to the unconfined domain over dbus.
|
|
|
|
## </summary>
|
|
|
|
## <param name="domain">
|
2006-02-10 18:41:53 +00:00
|
|
|
## <summary>
|
2005-12-02 22:06:05 +00:00
|
|
|
## Domain allowed access.
|
2006-02-10 18:41:53 +00:00
|
|
|
## </summary>
|
2005-12-02 22:06:05 +00:00
|
|
|
## </param>
|
|
|
|
#
|
|
|
|
interface(`unconfined_dbus_send',`
|
|
|
|
gen_require(`
|
|
|
|
type unconfined_t;
|
|
|
|
class dbus send_msg;
|
|
|
|
')
|
|
|
|
|
|
|
|
allow $1 unconfined_t:dbus send_msg;
|
|
|
|
')
|
|
|
|
|
2006-05-03 19:58:01 +00:00
|
|
|
########################################
|
|
|
|
## <summary>
|
|
|
|
## Send and receive messages from
|
|
|
|
## unconfined_t over dbus.
|
|
|
|
## </summary>
|
|
|
|
## <param name="domain">
|
|
|
|
## <summary>
|
|
|
|
## Domain allowed access.
|
|
|
|
## </summary>
|
|
|
|
## </param>
|
|
|
|
#
|
|
|
|
interface(`unconfined_dbus_chat',`
|
|
|
|
gen_require(`
|
|
|
|
type unconfined_t;
|
|
|
|
class dbus send_msg;
|
|
|
|
')
|
|
|
|
|
|
|
|
allow $1 unconfined_t:dbus send_msg;
|
|
|
|
allow unconfined_t $1:dbus send_msg;
|
|
|
|
')
|
|
|
|
|
2005-10-28 18:13:44 +00:00
|
|
|
########################################
|
|
|
|
## <summary>
|
2007-10-02 16:04:50 +00:00
|
|
|
## Connect to the the unconfined DBUS
|
|
|
|
## for service (acquire_svc).
|
2005-10-28 18:13:44 +00:00
|
|
|
## </summary>
|
|
|
|
## <param name="domain">
|
2006-02-10 18:41:53 +00:00
|
|
|
## <summary>
|
2007-10-02 16:04:50 +00:00
|
|
|
## Domain allowed access.
|
2006-02-10 18:41:53 +00:00
|
|
|
## </summary>
|
2005-10-28 18:13:44 +00:00
|
|
|
## </param>
|
|
|
|
#
|
2007-10-02 16:04:50 +00:00
|
|
|
interface(`unconfined_dbus_connect',`
|
|
|
|
gen_require(`
|
|
|
|
type unconfined_t;
|
|
|
|
class dbus acquire_svc;
|
2005-11-15 18:47:20 +00:00
|
|
|
')
|
2007-10-02 16:04:50 +00:00
|
|
|
|
|
|
|
allow $1 unconfined_t:dbus acquire_svc;
|
2005-10-28 18:13:44 +00:00
|
|
|
')
|
2006-05-17 14:50:31 +00:00
|
|
|
|
2006-10-18 17:31:14 +00:00
|
|
|
########################################
|
|
|
|
## <summary>
|
2007-10-02 16:04:50 +00:00
|
|
|
## Read files in unconfined users home directories.
|
2006-10-18 17:31:14 +00:00
|
|
|
## </summary>
|
|
|
|
## <param name="domain">
|
|
|
|
## <summary>
|
2007-10-02 16:04:50 +00:00
|
|
|
## Domain allowed access.
|
2006-10-18 17:31:14 +00:00
|
|
|
## </summary>
|
|
|
|
## </param>
|
|
|
|
#
|
2007-10-02 16:04:50 +00:00
|
|
|
interface(`unconfined_read_home_content_files',`
|
|
|
|
gen_require(`
|
|
|
|
type unconfined_home_dir_t, unconfined_home_t;
|
|
|
|
')
|
2006-10-18 17:31:14 +00:00
|
|
|
|
2007-10-02 16:04:50 +00:00
|
|
|
files_search_home($1)
|
|
|
|
allow $1 { unconfined_home_dir_t unconfined_home_t }:dir list_dir_perms;
|
|
|
|
read_files_pattern($1, { unconfined_home_dir_t unconfined_home_t }, unconfined_home_t)
|
|
|
|
read_lnk_files_pattern($1, { unconfined_home_dir_t unconfined_home_t }, unconfined_home_t)
|
|
|
|
')
|
|
|
|
|
|
|
|
########################################
|
|
|
|
## <summary>
|
|
|
|
## Read unconfined users temporary files.
|
|
|
|
## </summary>
|
|
|
|
## <param name="domain">
|
|
|
|
## <summary>
|
|
|
|
## Domain allowed access.
|
|
|
|
## </summary>
|
|
|
|
## </param>
|
|
|
|
#
|
|
|
|
interface(`unconfined_read_tmp_files',`
|
|
|
|
gen_require(`
|
|
|
|
type unconfined_tmp_t;
|
2006-10-18 17:31:14 +00:00
|
|
|
')
|
2007-10-02 16:04:50 +00:00
|
|
|
|
|
|
|
files_search_tmp($1)
|
|
|
|
allow $1 unconfined_tmp_t:dir list_dir_perms;
|
|
|
|
read_files_pattern($1, unconfined_tmp_t, unconfined_tmp_t)
|
|
|
|
read_lnk_files_pattern($1, unconfined_tmp_t, unconfined_tmp_t)
|
2006-10-18 17:31:14 +00:00
|
|
|
')
|
|
|
|
|
2006-05-17 14:50:31 +00:00
|
|
|
########################################
|
|
|
|
## <summary>
|
2007-10-02 16:04:50 +00:00
|
|
|
## Write unconfined users temporary files.
|
2006-05-17 14:50:31 +00:00
|
|
|
## </summary>
|
|
|
|
## <param name="domain">
|
|
|
|
## <summary>
|
|
|
|
## Domain allowed access.
|
|
|
|
## </summary>
|
|
|
|
## </param>
|
|
|
|
#
|
2007-10-02 16:04:50 +00:00
|
|
|
interface(`unconfined_write_tmp_files',`
|
2006-05-17 14:50:31 +00:00
|
|
|
gen_require(`
|
2007-10-02 16:04:50 +00:00
|
|
|
type unconfined_tmp_t;
|
2006-05-17 14:50:31 +00:00
|
|
|
')
|
|
|
|
|
2007-10-02 16:04:50 +00:00
|
|
|
allow $1 unconfined_tmp_t:file { getattr write append };
|
2006-05-17 14:50:31 +00:00
|
|
|
')
|