Dominick Grift bf79955
policy_module(mailscanner, 1.0.2)
1ec3d1a
1ec3d1a
########################################
1ec3d1a
#
1ec3d1a
# Declarations
1ec3d1a
#
1ec3d1a
1ec3d1a
type mscan_t;
1ec3d1a
type mscan_exec_t;
1ec3d1a
init_daemon_domain(mscan_t, mscan_exec_t)
1ec3d1a
1ec3d1a
type mscan_initrc_exec_t;
1ec3d1a
init_script_file(mscan_initrc_exec_t)
1ec3d1a
1ec3d1a
type mscan_etc_t;
1ec3d1a
files_config_file(mscan_etc_t)
1ec3d1a
Dominick Grift bf79955
type mscan_spool_t;
Dominick Grift bf79955
files_type(mscan_spool_t)
Dominick Grift bf79955
1ec3d1a
type mscan_tmp_t;
1ec3d1a
files_tmp_file(mscan_tmp_t)
1ec3d1a
1ec3d1a
type mscan_var_run_t;
1ec3d1a
files_pid_file(mscan_var_run_t)
1ec3d1a
1ec3d1a
########################################
1ec3d1a
#
1ec3d1a
# Local policy
1ec3d1a
#
1ec3d1a
1ec3d1a
allow mscan_t self:capability { setuid chown setgid dac_override };
1ec3d1a
allow mscan_t self:process signal;
1ec3d1a
allow mscan_t self:fifo_file rw_fifo_file_perms;
1ec3d1a
1ec3d1a
read_files_pattern(mscan_t, mscan_etc_t, mscan_etc_t)
577733a
list_dirs_pattern(mscan_t, mscan_etc_t, mscan_etc_t)
1ec3d1a
1ec3d1a
manage_files_pattern(mscan_t, mscan_var_run_t, mscan_var_run_t)
1ec3d1a
files_pid_filetrans(mscan_t, mscan_var_run_t, file)
1ec3d1a
Dominick Grift bf79955
manage_dirs_pattern(mscan_t, mscan_spool_t, mscan_spool_t)
Dominick Grift bf79955
manage_files_pattern(mscan_t, mscan_spool_t, mscan_spool_t)
Dominick Grift bf79955
files_spool_filetrans(mscan_t, mscan_spool_t, dir)
Dominick Grift bf79955
1ec3d1a
manage_dirs_pattern(mscan_t, mscan_tmp_t, mscan_tmp_t)
1ec3d1a
manage_files_pattern(mscan_t, mscan_tmp_t, mscan_tmp_t)
aa4c46f
files_tmp_filetrans(mscan_t, mscan_tmp_t, { dir file })
1ec3d1a
1ec3d1a
can_exec(mscan_t, mscan_exec_t)
1ec3d1a
1ec3d1a
kernel_read_system_state(mscan_t)
1ec3d1a
1ec3d1a
corecmd_exec_bin(mscan_t)
1ec3d1a
corecmd_exec_shell(mscan_t)
1ec3d1a
Dominick Grift 15056a9
corenet_all_recvfrom_netlabel(mscan_t)
Dominick Grift 15056a9
corenet_all_recvfrom_unlabeled(mscan_t)
Dominick Grift 15056a9
corenet_tcp_bind_generic_node(mscan_t)
Dominick Grift 8a31c95
corenet_udp_bind_generic_node(mscan_t)
Dominick Grift 15056a9
corenet_tcp_sendrecv_generic_if(mscan_t)
Dominick Grift 8a31c95
corenet_udp_sendrecv_generic_if(mscan_t)
Dominick Grift 15056a9
corenet_tcp_sendrecv_generic_node(mscan_t)
Dominick Grift 8a31c95
corenet_udp_sendrecv_generic_node(mscan_t)
Dominick Grift 8a31c95
Dominick Grift 8a31c95
corenet_sendrecv_trisoap_client_packets(mscan_t)
Dominick Grift 8a31c95
corenet_tcp_connect_trisoap_port(mscan_t)
Dominick Grift 8a31c95
corenet_tcp_sendrecv_trisoap_port(mscan_t)
Dominick Grift 8a31c95
Dominick Grift 8a31c95
corenet_sendrecv_generic_server_packets(mscan_t)
Dominick Grift 8a31c95
corenet_udp_bind_generic_port(mscan_t)
Dominick Grift 8a31c95
corenet_udp_sendrecv_all_ports(mscan_t)
1ec3d1a
1ec3d1a
dev_read_urand(mscan_t)
1ec3d1a
1ec3d1a
1ec3d1a
fs_getattr_xattr_fs(mscan_t)
1ec3d1a
1ec3d1a
auth_dontaudit_read_shadow(mscan_t)
1ec3d1a
auth_use_nsswitch(mscan_t)
1ec3d1a
1ec3d1a
logging_send_syslog_msg(mscan_t)
1ec3d1a
1ec3d1a
optional_policy(`
1ec3d1a
	clamav_domtrans_clamscan(mscan_t)
1ec3d1a
	clamav_manage_clamd_pid(mscan_t)
1ec3d1a
')
1ec3d1a
1ec3d1a
optional_policy(`
1ec3d1a
	mta_send_mail(mscan_t)
1ec3d1a
	mta_manage_queue(mscan_t)
1ec3d1a
')
1ec3d1a
1ec3d1a
optional_policy(`
1ec3d1a
	procmail_domtrans(mscan_t)
1ec3d1a
')
1ec3d1a
1ec3d1a
optional_policy(`
1ec3d1a
	spamassassin_read_home_client(mscan_t)
1ec3d1a
	spamassassin_read_lib_files(mscan_t)
1ec3d1a
')