Blob Blame History Raw
policy_module(mandb, 1.0.3)

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

attribute_role mandb_roles;
roleattribute system_r mandb_roles;

type mandb_t;
type mandb_exec_t;
init_daemon_domain(mandb_t, mandb_exec_t)
role mandb_roles types mandb_t;

type mandb_cache_t;
files_type(mandb_cache_t)

type mandb_lock_t;
files_lock_file(mandb_lock_t)

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

allow mandb_t self:process { setsched signal };
allow mandb_t self:fifo_file rw_fifo_file_perms;
allow mandb_t self:unix_stream_socket create_stream_socket_perms;

manage_dirs_pattern(mandb_t, mandb_cache_t, mandb_cache_t)
manage_files_pattern(mandb_t, mandb_cache_t, mandb_cache_t)
manage_lnk_files_pattern(mandb_t, mandb_cache_t, mandb_cache_t)
files_var_filetrans(mandb_t, mandb_cache_t, { dir file lnk_file })
can_exec(mandb_t, mandb_exec_t)

allow mandb_t mandb_lock_t:file manage_file_perms;
files_lock_filetrans(mandb_t, mandb_lock_t, file)

kernel_read_system_state(mandb_t)

corecmd_exec_bin(mandb_t)

domain_use_interactive_fds(mandb_t)

files_search_locks(mandb_t)

miscfiles_manage_man_cache(mandb_t)

optional_policy(`
	cron_system_entry(mandb_t, mandb_exec_t)
')