diff options
author | 2012-04-21 20:07:46 +0200 | |
---|---|---|
committer | 2012-04-21 20:07:46 +0200 | |
commit | 3962a6834f4e7ef04441de4f3134ff329d8602f9 (patch) | |
tree | cae07463edd5b609a97513e00d63e1bd410cc8bb /policy/modules/contrib/icecast.if | |
parent | Initial commit (diff) | |
download | hardened-refpolicy-3962a6834f4e7ef04441de4f3134ff329d8602f9.tar.gz hardened-refpolicy-3962a6834f4e7ef04441de4f3134ff329d8602f9.tar.bz2 hardened-refpolicy-3962a6834f4e7ef04441de4f3134ff329d8602f9.zip |
Pushing 2.20120215 (current version)
Diffstat (limited to 'policy/modules/contrib/icecast.if')
-rw-r--r-- | policy/modules/contrib/icecast.if | 188 |
1 files changed, 188 insertions, 0 deletions
diff --git a/policy/modules/contrib/icecast.if b/policy/modules/contrib/icecast.if new file mode 100644 index 000000000..ecab47ab7 --- /dev/null +++ b/policy/modules/contrib/icecast.if @@ -0,0 +1,188 @@ +## <summary> ShoutCast compatible streaming media server</summary> + +######################################## +## <summary> +## Execute a domain transition to run icecast. +## </summary> +## <param name="domain"> +## <summary> +## Domain allowed to transition. +## </summary> +## </param> +# +interface(`icecast_domtrans',` + gen_require(` + type icecast_t, icecast_exec_t; + ') + + domtrans_pattern($1, icecast_exec_t, icecast_t) +') + +######################################## +## <summary> +## Allow domain signal icecast +## </summary> +## <param name="domain"> +## <summary> +## Domain allowed access. +## </summary> +## </param> +# +interface(`icecast_signal',` + gen_require(` + type icecast_t; + ') + + allow $1 icecast_t:process signal; +') + +######################################## +## <summary> +## Execute icecast server in the icecast domain. +## </summary> +## <param name="domain"> +## <summary> +## Domain allowed to transition. +## </summary> +## </param> +# +interface(`icecast_initrc_domtrans',` + gen_require(` + type icecast_initrc_exec_t; + ') + + init_labeled_script_domtrans($1, icecast_initrc_exec_t) +') + +######################################## +## <summary> +## Read icecast PID files. +## </summary> +## <param name="domain"> +## <summary> +## Domain allowed access. +## </summary> +## </param> +# +interface(`icecast_read_pid_files',` + gen_require(` + type icecast_var_run_t; + ') + + files_search_pids($1) + allow $1 icecast_var_run_t:file read_file_perms; +') + +######################################## +## <summary> +## Manage icecast pid files. +## </summary> +## <param name="domain"> +## <summary> +## Domain allowed access. +## </summary> +## </param> +# +interface(`icecast_manage_pid_files',` + gen_require(` + type icecast_var_run_t; + ') + + files_search_pids($1) + manage_files_pattern($1, icecast_var_run_t, icecast_var_run_t) +') + +######################################## +## <summary> +## Allow the specified domain to read icecast's log files. +## </summary> +## <param name="domain"> +## <summary> +## Domain allowed access. +## </summary> +## </param> +## <rolecap/> +# +interface(`icecast_read_log',` + gen_require(` + type icecast_log_t; + ') + + logging_search_logs($1) + read_files_pattern($1, icecast_log_t, icecast_log_t) +') + +######################################## +## <summary> +## Allow the specified domain to append +## icecast log files. +## </summary> +## <param name="domain"> +## <summary> +## Domain allowed access. +## </summary> +## </param> +# +interface(`icecast_append_log',` + gen_require(` + type icecast_log_t; + ') + + logging_search_logs($1) + append_files_pattern($1, icecast_log_t, icecast_log_t) +') + +######################################## +## <summary> +## Allow domain to manage icecast log files +## </summary> +## <param name="domain"> +## <summary> +## Domain allow access. +## </summary> +## </param> +# +interface(`icecast_manage_log',` + gen_require(` + type icecast_log_t; + ') + + logging_search_logs($1) + manage_files_pattern($1, icecast_log_t, icecast_log_t) +') + +######################################## +## <summary> +## All of the rules required to administrate +## an icecast environment +## </summary> +## <param name="domain"> +## <summary> +## Domain allowed access. +## </summary> +## </param> +## <param name="role"> +## <summary> +## Role allowed access. +## </summary> +## </param> +## <rolecap/> +# +interface(`icecast_admin',` + gen_require(` + type icecast_t, icecast_initrc_exec_t; + ') + + ps_process_pattern($1, icecast_t) + + # Allow icecast_t to restart the apache service + icecast_initrc_domtrans($1) + domain_system_change_exemption($1) + role_transition $2 icecast_initrc_exec_t system_r; + allow $2 system_r; + + icecast_manage_pid_files($1) + + icecast_manage_log($1) + +') |