selinux-refpolicy/policy/modules/apps/xscreensaver.if

57 lines
1.4 KiB
Plaintext

## <summary>Modular screen saver and locker for X11.</summary>
########################################
## <summary>
## Role access for xscreensaver.
## </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(`xscreensaver_role',`
gen_require(`
attribute_role xscreensaver_roles;
attribute_role xscreensaver_helper_roles;
type xscreensaver_t, xscreensaver_exec_t;
type xscreensaver_helper_t;
type xscreensaver_config_t, xscreensaver_tmpfs_t;
')
roleattribute $4 xscreensaver_roles;
roleattribute $4 xscreensaver_helper_roles;
domtrans_pattern($3, xscreensaver_exec_t, xscreensaver_t)
allow $3 xscreensaver_t:process { ptrace signal_perms };
ps_process_pattern($3, xscreensaver_t)
allow $2 xscreensaver_config_t:file { manage_file_perms relabel_file_perms };
allow $2 xscreensaver_tmpfs_t:dir { manage_dir_perms relabel_dir_perms };
allow $2 xscreensaver_tmpfs_t:file { manage_file_perms relabel_file_perms };
allow xscreensaver_helper_t $3:fd use;
optional_policy(`
systemd_user_app_status($1, xscreensaver_t)
')
')