b7980a45fc
Signed-off-by: Kenton Groombridge <me@concord.sh>
64 lines
1.5 KiB
Plaintext
64 lines
1.5 KiB
Plaintext
## <summary>IRC client policy.</summary>
|
|
|
|
########################################
|
|
## <summary>
|
|
## Role access for IRC.
|
|
## </summary>
|
|
## <param name="role_prefix">
|
|
## <summary>
|
|
## The prefix of the user role (e.g., user
|
|
## is the prefix for user_r).
|
|
## </summary>
|
|
## </param>
|
|
## <param name="user_domain">
|
|
## <summary>
|
|
## User domain for the role.
|
|
## </summary>
|
|
## </param>
|
|
## <param name="user_exec_domain">
|
|
## <summary>
|
|
## User exec domain for execute and transition access.
|
|
## </summary>
|
|
## </param>
|
|
## <param name="role">
|
|
## <summary>
|
|
## Role allowed access
|
|
## </summary>
|
|
## </param>
|
|
#
|
|
template(`irc_role',`
|
|
gen_require(`
|
|
attribute_role irc_roles;
|
|
type irc_t, irc_exec_t, irc_home_t;
|
|
type irc_tmp_t, irc_log_home_t;
|
|
')
|
|
|
|
########################################
|
|
#
|
|
# Declarations
|
|
#
|
|
|
|
roleattribute $4 irc_roles;
|
|
|
|
########################################
|
|
#
|
|
# Policy
|
|
#
|
|
|
|
domtrans_pattern($3, irc_exec_t, irc_t)
|
|
|
|
ps_process_pattern($3, irc_t)
|
|
allow $3 irc_t:process { ptrace signal_perms };
|
|
|
|
allow $2 { irc_home_t irc_log_home_t irc_tmp_t }:dir { manage_dir_perms relabel_dir_perms };
|
|
allow $2 { irc_home_t irc_log_home_t irc_tmp_t }:file { manage_file_perms relabel_file_perms };
|
|
allow $2 { irc_home_t irc_log_home_t irc_tmp_t }:lnk_file { manage_lnk_file_perms relabel_lnk_file_perms };
|
|
userdom_user_home_dir_filetrans($2, irc_home_t, dir, ".irssi")
|
|
userdom_user_home_dir_filetrans($2, irc_home_t, file, ".ircmotd")
|
|
userdom_user_home_dir_filetrans($2, irc_log_home_t, dir, "irclogs")
|
|
|
|
optional_policy(`
|
|
systemd_user_app_status($1, irc_t)
|
|
')
|
|
')
|