Blob Blame History Raw
policy_module(pkcsslotd, 1.0.0)

########################################
#
# Declarations
#

type pkcsslotd_t;
type pkcsslotd_exec_t;
init_daemon_domain(pkcsslotd_t, pkcsslotd_exec_t)

type pkcsslotd_var_lib_t;
files_type(pkcsslotd_var_lib_t)

type pkcsslotd_unit_file_t;
systemd_unit_file(pkcsslotd_unit_file_t)

type pkcsslotd_tmp_t;
files_tmp_file(pkcsslotd_tmp_t)

type pkcsslotd_tmpfs_t;
files_tmpfs_file(pkcsslotd_tmpfs_t)

type pkcsslotd_var_run_t;
files_pid_file(pkcsslotd_var_run_t)

########################################
#
# pkcsslotd local policy
#

allow pkcsslotd_t self:capability { kill };
allow pkcsslotd_t self:process { fork };

allow pkcsslotd_t self:fifo_file rw_fifo_file_perms;
allow pkcsslotd_t self:sem create_sem_perms;
allow pkcsslotd_t self:shm create_shm_perms;
allow pkcsslotd_t self:unix_stream_socket create_stream_socket_perms;

manage_dirs_pattern(pkcsslotd_t, pkcsslotd_tmp_t, pkcsslotd_tmp_t)
manage_files_pattern(pkcsslotd_t, pkcsslotd_tmp_t, pkcsslotd_tmp_t)
files_tmp_filetrans(pkcsslotd_t, pkcsslotd_tmp_t, { file dir })

manage_dirs_pattern(pkcsslotd_t, pkcsslotd_tmpfs_t, pkcsslotd_tmpfs_t)
manage_files_pattern(pkcsslotd_t, pkcsslotd_tmpfs_t, pkcsslotd_tmpfs_t)
fs_tmpfs_filetrans(pkcsslotd_t, pkcsslotd_tmpfs_t, { dir file })

manage_dirs_pattern(pkcsslotd_t, pkcsslotd_var_lib_t, pkcsslotd_var_lib_t)
manage_files_pattern(pkcsslotd_t, pkcsslotd_var_lib_t, pkcsslotd_var_lib_t)
manage_lnk_files_pattern(pkcsslotd_t, pkcsslotd_var_lib_t, pkcsslotd_var_lib_t)
files_var_lib_filetrans(pkcsslotd_t, pkcsslotd_var_lib_t, { dir file lnk_file })

manage_files_pattern(pkcsslotd_t, pkcsslotd_var_run_t, pkcsslotd_var_run_t)
manage_dirs_pattern(pkcsslotd_t, pkcsslotd_var_run_t,pkcsslotd_var_run_t)
files_pid_filetrans(pkcsslotd_t, pkcsslotd_var_run_t, { file  dir })

domain_use_interactive_fds(pkcsslotd_t)


logging_send_syslog_msg(pkcsslotd_t)