selinux-policy/policy/modules/services/oddjob.te
2008-04-29 13:58:34 +00:00

90 lines
2.2 KiB
Plaintext

policy_module(oddjob,1.4.1)
########################################
#
# Declarations
#
type oddjob_t;
type oddjob_exec_t;
domain_type(oddjob_t)
init_daemon_domain(oddjob_t, oddjob_exec_t)
domain_subj_id_change_exemption(oddjob_t)
type oddjob_mkhomedir_t;
type oddjob_mkhomedir_exec_t;
domain_type(oddjob_mkhomedir_t)
init_daemon_domain(oddjob_mkhomedir_t, oddjob_mkhomedir_exec_t)
oddjob_system_entry(oddjob_mkhomedir_t, oddjob_mkhomedir_exec_t)
# pid files
type oddjob_var_run_t;
files_pid_file(oddjob_var_run_t)
########################################
#
# oddjob local policy
#
allow oddjob_t self:capability setgid;
allow oddjob_t self:process { setexec signal };
allow oddjob_t self:fifo_file { read write };
allow oddjob_t self:unix_stream_socket create_stream_socket_perms;
manage_files_pattern(oddjob_t,oddjob_var_run_t,oddjob_var_run_t)
manage_sock_files_pattern(oddjob_t,oddjob_var_run_t,oddjob_var_run_t)
files_pid_filetrans(oddjob_t,oddjob_var_run_t, { file sock_file })
kernel_read_system_state(oddjob_t)
corecmd_exec_bin(oddjob_t)
corecmd_exec_shell(oddjob_t)
mcs_process_set_categories(oddjob_t)
selinux_compute_create_context(oddjob_t)
files_read_etc_files(oddjob_t)
libs_use_ld_so(oddjob_t)
libs_use_shared_libs(oddjob_t)
miscfiles_read_localization(oddjob_t)
locallogin_dontaudit_use_fds(oddjob_t)
optional_policy(`
dbus_system_bus_client_template(oddjob,oddjob_t)
dbus_connect_system_bus(oddjob_t)
')
optional_policy(`
unconfined_domtrans(oddjob_t)
')
########################################
#
# oddjob_mkhomedir local policy
#
allow oddjob_mkhomedir_t self:fifo_file { read write };
allow oddjob_mkhomedir_t self:unix_stream_socket create_stream_socket_perms;
files_read_etc_files(oddjob_mkhomedir_t)
libs_use_ld_so(oddjob_mkhomedir_t)
libs_use_shared_libs(oddjob_mkhomedir_t)
miscfiles_read_localization(oddjob_mkhomedir_t)
staff_manage_home_dirs(oddjob_mkhomedir_t)
# Add/remove user home directories
unprivuser_home_filetrans_home_dir(oddjob_mkhomedir_t)
unprivuser_manage_home_content_dirs(oddjob_mkhomedir_t)
unprivuser_manage_home_content_files(oddjob_mkhomedir_t)
unprivuser_manage_home_dirs(oddjob_mkhomedir_t)
unprivuser_home_dir_filetrans_home_content(oddjob_mkhomedir_t,notdevfile_class_set)