From: jason@perfinion.com (Jason Zaman) Date: Fri, 15 May 2015 02:28:44 +0400 Subject: [refpolicy] [PATCH] Introduce init_manage_service_template interface Message-ID: <1431642524-14781-1-git-send-email-jason@perfinion.com> To: refpolicy@oss.tresys.com List-Id: refpolicy.oss.tresys.com This is to be used where a role needs to start and stop a service. It centralizes all the rules for redhat < 6 sysvinit that were used in the _admin interfaces. The rules for other inits will be added later. --- policy/modules/system/init.if | 40 ++++++++++++++++++++++++++++++++++++++++ 1 file changed, 40 insertions(+) diff --git a/policy/modules/system/init.if b/policy/modules/system/init.if index 0e7eaec..7938735 100644 --- a/policy/modules/system/init.if +++ b/policy/modules/system/init.if @@ -963,6 +963,46 @@ interface(`init_all_labeled_script_domtrans',` ######################################## ## +## Allow the role to start and stop +## labeled services. +## +## +## +## Domain allowed to transition. +## +## +## +## +## The role to be performing this action. +## +## +## +## +## Type to be used as a daemon domain. +## +## +## +## +## Labeled init script file. +## +## +# +interface(`init_manage_service_template',` + gen_require(` + role system_r; + ') + + ifndef(`direct_sysadm_daemon',` + # rules for sysvinit / upstart + init_labeled_script_domtrans($1, $4) + domain_system_change_exemption($1) + role_transition $2 $4 system_r; + allow $2 system_r; + ') +') + +######################################## +## ## Start and stop daemon programs directly. ## ## -- 2.3.6