Chris PeBenito e9e43f
policy_module(plymouthd, 1.0.0)
Chris PeBenito e9e43f
Chris PeBenito e9e43f
########################################
Chris PeBenito e9e43f
#
Chris PeBenito e9e43f
# Declarations
Chris PeBenito e9e43f
#
Chris PeBenito e9e43f
Chris PeBenito e9e43f
type plymouth_t;
Chris PeBenito e9e43f
type plymouth_exec_t;
Chris PeBenito e9e43f
application_domain(plymouth_t, plymouth_exec_t)
Chris PeBenito e9e43f
Chris PeBenito e9e43f
type plymouthd_t;
Chris PeBenito e9e43f
type plymouthd_exec_t;
Chris PeBenito e9e43f
init_daemon_domain(plymouthd_t, plymouthd_exec_t)
Chris PeBenito e9e43f
Chris PeBenito e9e43f
type plymouthd_spool_t;
Chris PeBenito e9e43f
files_type(plymouthd_spool_t)
Chris PeBenito e9e43f
Chris PeBenito e9e43f
type plymouthd_var_lib_t;
Chris PeBenito e9e43f
files_type(plymouthd_var_lib_t)
Chris PeBenito e9e43f
Chris PeBenito e9e43f
type plymouthd_var_run_t;
Chris PeBenito e9e43f
files_pid_file(plymouthd_var_run_t)
Chris PeBenito e9e43f
Chris PeBenito e9e43f
########################################
Chris PeBenito e9e43f
#
Chris PeBenito e9e43f
# Plymouthd private policy
Chris PeBenito e9e43f
#
Chris PeBenito e9e43f
Chris PeBenito e9e43f
allow plymouthd_t self:capability { sys_admin sys_tty_config };
Chris PeBenito e9e43f
dontaudit plymouthd_t self:capability dac_override;
Chris PeBenito e9e43f
allow plymouthd_t self:process signal;
Chris PeBenito e9e43f
allow plymouthd_t self:fifo_file rw_fifo_file_perms;
Chris PeBenito e9e43f
allow plymouthd_t self:unix_stream_socket create_stream_socket_perms;
Chris PeBenito e9e43f
Chris PeBenito e9e43f
manage_dirs_pattern(plymouthd_t, plymouthd_spool_t, plymouthd_spool_t)
Chris PeBenito e9e43f
manage_files_pattern(plymouthd_t, plymouthd_spool_t, plymouthd_spool_t)
Chris PeBenito e9e43f
manage_sock_files_pattern(plymouthd_t, plymouthd_spool_t, plymouthd_spool_t)
Chris PeBenito e9e43f
files_spool_filetrans(plymouthd_t, plymouthd_spool_t, { file dir sock_file })
Chris PeBenito e9e43f
Chris PeBenito e9e43f
manage_dirs_pattern(plymouthd_t, plymouthd_var_lib_t, plymouthd_var_lib_t)
Chris PeBenito e9e43f
manage_files_pattern(plymouthd_t, plymouthd_var_lib_t, plymouthd_var_lib_t)
Chris PeBenito e9e43f
files_var_lib_filetrans(plymouthd_t, plymouthd_var_lib_t, { file dir })
Chris PeBenito e9e43f
Chris PeBenito e9e43f
manage_dirs_pattern(plymouthd_t, plymouthd_var_run_t, plymouthd_var_run_t)
Chris PeBenito e9e43f
manage_files_pattern(plymouthd_t, plymouthd_var_run_t, plymouthd_var_run_t)
Chris PeBenito e9e43f
files_pid_filetrans(plymouthd_t, plymouthd_var_run_t, { file dir })
Chris PeBenito e9e43f
Chris PeBenito e9e43f
kernel_read_system_state(plymouthd_t)
Chris PeBenito e9e43f
kernel_request_load_module(plymouthd_t)
Chris PeBenito e9e43f
kernel_change_ring_buffer_level(plymouthd_t)
Chris PeBenito e9e43f
Chris PeBenito e9e43f
dev_rw_dri(plymouthd_t)
Chris PeBenito e9e43f
dev_read_sysfs(plymouthd_t)
Chris PeBenito e9e43f
dev_read_framebuffer(plymouthd_t)
Chris PeBenito e9e43f
dev_write_framebuffer(plymouthd_t)
Chris PeBenito e9e43f
Chris PeBenito e9e43f
domain_use_interactive_fds(plymouthd_t)
Chris PeBenito e9e43f
Chris PeBenito e9e43f
files_read_etc_files(plymouthd_t)
Chris PeBenito e9e43f
files_read_usr_files(plymouthd_t)
Chris PeBenito e9e43f
Dan Walsh 3eaa99
term_use_unallocated_ttys(plymouthd_t)
Dan Walsh 3eaa99
Chris PeBenito e9e43f
miscfiles_read_localization(plymouthd_t)
Chris PeBenito e9e43f
miscfiles_read_fonts(plymouthd_t)
Chris PeBenito e9e43f
miscfiles_manage_fonts_cache(plymouthd_t)
Chris PeBenito e9e43f
Dan Walsh 3eaa99
userdom_read_admin_home_files(plymouthd_t)
Dan Walsh 3eaa99
Chris PeBenito e9e43f
########################################
Chris PeBenito e9e43f
#
Chris PeBenito e9e43f
# Plymouth private policy
Chris PeBenito e9e43f
#
Chris PeBenito e9e43f
Chris PeBenito e9e43f
allow plymouth_t self:process signal;
Chris PeBenito e9e43f
allow plymouth_t self:fifo_file rw_file_perms;
Chris PeBenito e9e43f
allow plymouth_t self:unix_stream_socket create_stream_socket_perms;
Chris PeBenito e9e43f
Chris PeBenito e9e43f
kernel_read_system_state(plymouth_t)
Dan Walsh 3eaa99
kernel_stream_connect(plymouth_t)
Chris PeBenito e9e43f
Chris PeBenito e9e43f
domain_use_interactive_fds(plymouth_t)
Chris PeBenito e9e43f
Chris PeBenito e9e43f
files_read_etc_files(plymouth_t)
Chris PeBenito e9e43f
Chris PeBenito e9e43f
term_use_ptmx(plymouth_t)
Chris PeBenito e9e43f
Chris PeBenito e9e43f
miscfiles_read_localization(plymouth_t)
Chris PeBenito e9e43f
Chris PeBenito e9e43f
sysnet_read_config(plymouth_t)
Chris PeBenito e9e43f
Chris PeBenito e9e43f
plymouthd_stream_connect(plymouth_t)
Chris PeBenito e9e43f
Chris PeBenito e9e43f
ifdef(`hide_broken_symptoms', `
Chris PeBenito e9e43f
	optional_policy(`
Chris PeBenito e9e43f
		hal_dontaudit_write_log(plymouth_t)
Chris PeBenito e9e43f
		hal_dontaudit_rw_pipes(plymouth_t)
Chris PeBenito e9e43f
	')
Chris PeBenito e9e43f
')
Chris PeBenito e9e43f
Chris PeBenito e9e43f
optional_policy(`
Chris PeBenito e9e43f
	lvm_domtrans(plymouth_t)
Chris PeBenito e9e43f
')