policy_module(numad)

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

type numad_t;
type numad_exec_t;
init_daemon_domain(numad_t, numad_exec_t)
application_executable_file(numad_exec_t)

type numad_initrc_exec_t;
init_script_file(numad_initrc_exec_t)

type numad_log_t;
logging_log_file(numad_log_t)

type numad_runtime_t alias numad_var_run_t;
files_runtime_file(numad_runtime_t)

########################################
#
# Local policy
#

allow numad_t self:fifo_file rw_fifo_file_perms;
allow numad_t self:msg { receive send };
allow numad_t self:msgq create_msgq_perms;
allow numad_t self:unix_stream_socket create_stream_socket_perms;

allow numad_t numad_log_t:file { append_file_perms create_file_perms setattr_file_perms };
logging_log_filetrans(numad_t, numad_log_t, file)

manage_files_pattern(numad_t, numad_runtime_t, numad_runtime_t)
files_runtime_filetrans(numad_t, numad_runtime_t, file)

kernel_read_system_state(numad_t)

dev_read_sysfs(numad_t)

files_read_etc_files(numad_t)

miscfiles_read_localization(numad_t)
