]> git.ipfire.org Git - people/stevee/selinux-policy.git/blame - refpolicy/policy/modules/services/cyrus.te
add ddclient, bug 1523
[people/stevee/selinux-policy.git] / refpolicy / policy / modules / services / cyrus.te
CommitLineData
ea557a85 1
5ea24be9 2policy_module(cyrus,1.1.0)
ea557a85
CP
3
4########################################
5#
6# Declarations
7#
8
9type cyrus_t;
10type cyrus_exec_t;
11init_daemon_domain(cyrus_t,cyrus_exec_t)
12
13type cyrus_tmp_t;
14files_tmp_file(cyrus_tmp_t)
15
16type cyrus_var_lib_t;
17files_type(cyrus_var_lib_t)
18
19type cyrus_var_run_t;
20files_pid_file(cyrus_var_run_t)
21
22########################################
23#
24# Local policy
25#
26
27allow cyrus_t self:capability { dac_override net_bind_service setgid setuid sys_resource };
28dontaudit cyrus_t self:capability sys_tty_config;
29allow cyrus_t self:process ~{ ptrace setcurrent setexec setfscreate setrlimit execmem execstack execheap };
30allow cyrus_t self:process setrlimit;
31allow cyrus_t self:fd use;
32allow cyrus_t self:fifo_file rw_file_perms;
33acca55 33allow cyrus_t self:sock_file r_file_perms;
ea557a85
CP
34allow cyrus_t self:shm create_shm_perms;
35allow cyrus_t self:sem create_sem_perms;
36allow cyrus_t self:msgq create_msgq_perms;
37allow cyrus_t self:msg { send receive };
38allow cyrus_t self:unix_dgram_socket create_socket_perms;
39allow cyrus_t self:unix_stream_socket create_stream_socket_perms;
40allow cyrus_t self:unix_dgram_socket sendto;
41allow cyrus_t self:unix_stream_socket connectto;
42allow cyrus_t self:tcp_socket create_stream_socket_perms;
43allow cyrus_t self:udp_socket create_socket_perms;
44
45allow cyrus_t cyrus_tmp_t:dir create_dir_perms;
46allow cyrus_t cyrus_tmp_t:file create_file_perms;
103fe280 47files_tmp_filetrans(cyrus_t, cyrus_tmp_t, { file dir })
ea557a85
CP
48
49allow cyrus_t cyrus_var_lib_t:dir create_dir_perms;
50allow cyrus_t cyrus_var_lib_t:{file sock_file lnk_file} create_file_perms;
1c1ac67f 51files_pid_filetrans(cyrus_t,cyrus_var_run_t,file)
ea557a85
CP
52
53allow cyrus_t cyrus_var_run_t:dir rw_dir_perms;
54allow cyrus_t cyrus_var_run_t:sock_file create_file_perms;
55allow cyrus_t cyrus_var_run_t:file create_file_perms;
103fe280 56files_pid_filetrans(cyrus_t,cyrus_var_run_t,{ file sock_file })
ea557a85 57
445522dc 58kernel_read_kernel_sysctls(cyrus_t)
ea557a85 59kernel_read_system_state(cyrus_t)
445522dc 60kernel_read_all_sysctls(cyrus_t)
ea557a85
CP
61
62corenet_tcp_sendrecv_all_if(cyrus_t)
63corenet_udp_sendrecv_all_if(cyrus_t)
64corenet_raw_sendrecv_all_if(cyrus_t)
65corenet_tcp_sendrecv_all_nodes(cyrus_t)
66corenet_udp_sendrecv_all_nodes(cyrus_t)
67corenet_raw_sendrecv_all_nodes(cyrus_t)
68corenet_tcp_sendrecv_all_ports(cyrus_t)
69corenet_udp_sendrecv_all_ports(cyrus_t)
bd70373d 70corenet_non_ipsec_sendrecv(cyrus_t)
ea557a85
CP
71corenet_tcp_bind_all_nodes(cyrus_t)
72corenet_udp_bind_all_nodes(cyrus_t)
73corenet_tcp_bind_mail_port(cyrus_t)
74corenet_tcp_bind_pop_port(cyrus_t)
75corenet_tcp_connect_all_ports(cyrus_t)
76
77dev_read_rand(cyrus_t)
78dev_read_urand(cyrus_t)
79dev_read_sysfs(cyrus_t)
80
81fs_getattr_all_fs(cyrus_t)
82fs_search_auto_mountpoints(cyrus_t)
83
84term_dontaudit_use_console(cyrus_t)
85
86corecmd_exec_bin(cyrus_t)
87
15722ec9 88domain_use_interactive_fds(cyrus_t)
ea557a85
CP
89
90files_list_var_lib(cyrus_t)
91files_read_etc_files(cyrus_t)
92files_read_etc_runtime_files(cyrus_t)
ea557a85 93
1c1ac67f 94init_use_fds(cyrus_t)
1815bad1 95init_use_script_ptys(cyrus_t)
ea557a85
CP
96
97libs_use_ld_so(cyrus_t)
98libs_use_shared_libs(cyrus_t)
99libs_exec_lib_files(cyrus_t)
100
101logging_send_syslog_msg(cyrus_t)
102
103miscfiles_read_localization(cyrus_t)
104miscfiles_read_certs(cyrus_t)
105
106sysnet_read_config(cyrus_t)
107
15722ec9 108userdom_dontaudit_use_unpriv_user_fds(cyrus_t)
103fe280
CP
109userdom_dontaudit_search_sysadm_home_dirs(cyrus_t)
110userdom_use_unpriv_users_fds(cyrus_t)
1815bad1 111userdom_use_sysadm_ptys(cyrus_t)
ea557a85
CP
112
113mta_manage_spool(cyrus_t)
114
115ifdef(`targeted_policy',`
1815bad1
CP
116 term_dontaudit_use_unallocated_ttys(cyrus_t)
117 term_dontaudit_use_generic_ptys(cyrus_t)
9e04f5c5 118 files_dontaudit_read_root_files(cyrus_t)
ea557a85
CP
119')
120
bb7170f6 121optional_policy(`
ea557a85
CP
122 cron_system_entry(cyrus_t,cyrus_exec_t)
123')
124
bb7170f6 125optional_policy(`
ea557a85
CP
126 mount_send_nfs_client_request(cyrus_t)
127')
128
bb7170f6 129optional_policy(`
ea557a85
CP
130 nis_use_ypbind(cyrus_t)
131')
132
bb7170f6 133optional_policy(`
ea557a85
CP
134 sasl_connect(cyrus_t)
135')
136
bb7170f6 137optional_policy(`
ea557a85
CP
138 seutil_sigchld_newrole(cyrus_t)
139')
140
bb7170f6 141optional_policy(`
ea557a85
CP
142 udev_read_db(cyrus_t)
143')