Dominick Grift 2d50679
policy_module(vnstatd, 1.0.1)
1ec3d1a
1ec3d1a
########################################
1ec3d1a
#
1ec3d1a
# Declarations
1ec3d1a
#
1ec3d1a
Dominick Grift 2d50679
attribute_role vnstat_roles;
Dominick Grift 2d50679
1ec3d1a
type vnstat_t;
1ec3d1a
type vnstat_exec_t;
1ec3d1a
application_domain(vnstat_t, vnstat_exec_t)
Dominick Grift 2d50679
role vnstat_roles types vnstat_t;
1ec3d1a
1ec3d1a
type vnstatd_t;
1ec3d1a
type vnstatd_exec_t;
1ec3d1a
init_daemon_domain(vnstatd_t, vnstatd_exec_t)
1ec3d1a
Dominick Grift 2d50679
type vnstatd_initrc_exec_t;
Dominick Grift 2d50679
init_script_file(vnstatd_initrc_exec_t)
Dominick Grift 2d50679
1ec3d1a
type vnstatd_var_lib_t;
1ec3d1a
files_type(vnstatd_var_lib_t)
1ec3d1a
1ec3d1a
type vnstatd_var_run_t;
1ec3d1a
files_pid_file(vnstatd_var_run_t)
1ec3d1a
1ec3d1a
########################################
1ec3d1a
#
Dominick Grift 2d50679
# Daemon local policy
1ec3d1a
#
1ec3d1a
1ec3d1a
allow vnstatd_t self:process signal;
1ec3d1a
allow vnstatd_t self:fifo_file rw_fifo_file_perms;
Dominick Grift 2d50679
allow vnstatd_t self:unix_stream_socket { accept listen };
1ec3d1a
1ec3d1a
manage_dirs_pattern(vnstatd_t, vnstatd_var_lib_t, vnstatd_var_lib_t)
1ec3d1a
manage_files_pattern(vnstatd_t, vnstatd_var_lib_t, vnstatd_var_lib_t)
1ec3d1a
files_var_lib_filetrans(vnstatd_t, vnstatd_var_lib_t, dir)
1ec3d1a
1ec3d1a
manage_files_pattern(vnstatd_t, vnstatd_var_run_t, vnstatd_var_run_t)
1ec3d1a
manage_dirs_pattern(vnstatd_t, vnstatd_var_run_t, vnstatd_var_run_t)
1ec3d1a
files_pid_filetrans(vnstatd_t, vnstatd_var_run_t, { dir file })
1ec3d1a
1ec3d1a
kernel_read_network_state(vnstatd_t)
1ec3d1a
kernel_read_system_state(vnstatd_t)
1ec3d1a
1ec3d1a
domain_use_interactive_fds(vnstatd_t)
1ec3d1a
1ec3d1a
fs_getattr_xattr_fs(vnstatd_t)
1ec3d1a
1ec3d1a
logging_send_syslog_msg(vnstatd_t)
1ec3d1a
1ec3d1a
########################################
1ec3d1a
#
Dominick Grift 2d50679
# Client local policy
1ec3d1a
#
1ec3d1a
1ec3d1a
allow vnstat_t self:process signal;
1ec3d1a
allow vnstat_t self:fifo_file rw_fifo_file_perms;
Dominick Grift 2d50679
allow vnstat_t self:unix_stream_socket { accept listen };
1ec3d1a
1ec3d1a
files_search_var_lib(vnstat_t)
1ec3d1a
manage_dirs_pattern(vnstat_t, vnstatd_var_lib_t, vnstatd_var_lib_t)
1ec3d1a
manage_files_pattern(vnstat_t, vnstatd_var_lib_t, vnstatd_var_lib_t)
1ec3d1a
1ec3d1a
kernel_read_network_state(vnstat_t)
1ec3d1a
kernel_read_system_state(vnstat_t)
1ec3d1a
1ec3d1a
domain_use_interactive_fds(vnstat_t)
1ec3d1a
1ec3d1a
fs_getattr_xattr_fs(vnstat_t)
1ec3d1a
1ec3d1a
logging_send_syslog_msg(vnstat_t)
Dominick Grift 2d50679
Dominick Grift 2d50679
optional_policy(`
Dominick Grift 2d50679
	cron_system_entry(vnstat_t, vnstat_exec_t)
Dominick Grift 2d50679
')