1 |
commit: 0bde972c43fa9f1e756774cd42fca90d34edc9f0 |
2 |
Author: Dominick Grift <dominick.grift <AT> gmail <DOT> com> |
3 |
AuthorDate: Fri Nov 2 14:32:38 2012 +0000 |
4 |
Commit: Sven Vermeulen <sven.vermeulen <AT> siphos <DOT> be> |
5 |
CommitDate: Fri Nov 2 19:08:25 2012 +0000 |
6 |
URL: http://git.overlays.gentoo.org/gitweb/?p=proj/hardened-refpolicy.git;a=commit;h=0bde972c |
7 |
|
8 |
Changes to the zarafa policy module |
9 |
|
10 |
Add init script file |
11 |
Add zarafa_admin() |
12 |
Ported from Fedora with changes |
13 |
Module clean up |
14 |
|
15 |
Signed-off-by: Dominick Grift <dominick.grift <AT> gmail.com> |
16 |
|
17 |
--- |
18 |
policy/modules/contrib/zarafa.fc | 22 ++++++--- |
19 |
policy/modules/contrib/zarafa.if | 92 +++++++++++++++++++++++++++++-------- |
20 |
policy/modules/contrib/zarafa.te | 95 +++++++++++++++++++++----------------- |
21 |
3 files changed, 139 insertions(+), 70 deletions(-) |
22 |
|
23 |
diff --git a/policy/modules/contrib/zarafa.fc b/policy/modules/contrib/zarafa.fc |
24 |
index 25f78ef..43c6df2 100644 |
25 |
--- a/policy/modules/contrib/zarafa.fc |
26 |
+++ b/policy/modules/contrib/zarafa.fc |
27 |
@@ -1,5 +1,7 @@ |
28 |
/etc/zarafa(/.*)? gen_context(system_u:object_r:zarafa_etc_t,s0) |
29 |
|
30 |
+/etc/rc\.d/init\.d/zarafa.* -- gen_context(system_u:object_r:zarafa_initrc_exec_t,s0) |
31 |
+ |
32 |
/usr/bin/zarafa-dagent -- gen_context(system_u:object_r:zarafa_deliver_exec_t,s0) |
33 |
/usr/bin/zarafa-gateway -- gen_context(system_u:object_r:zarafa_gateway_exec_t,s0) |
34 |
/usr/bin/zarafa-ical -- gen_context(system_u:object_r:zarafa_ical_exec_t,s0) |
35 |
@@ -8,19 +10,23 @@ |
36 |
/usr/bin/zarafa-server -- gen_context(system_u:object_r:zarafa_server_exec_t,s0) |
37 |
/usr/bin/zarafa-spooler -- gen_context(system_u:object_r:zarafa_spooler_exec_t,s0) |
38 |
|
39 |
-/var/lib/zarafa-.* gen_context(system_u:object_r:zarafa_var_lib_t,s0) |
40 |
+/var/lib/zarafa(/.*)? gen_context(system_u:object_r:zarafa_var_lib_t,s0) |
41 |
+/var/lib/zarafa-webaccess(/.*)? gen_context(system_u:object_r:zarafa_var_lib_t,s0) |
42 |
|
43 |
-/var/log/zarafa/gateway\.log -- gen_context(system_u:object_r:zarafa_gateway_log_t,s0) |
44 |
-/var/log/zarafa/ical\.log -- gen_context(system_u:object_r:zarafa_ical_log_t,s0) |
45 |
-/var/log/zarafa/indexer\.log -- gen_context(system_u:object_r:zarafa_indexer_log_t,s0) |
46 |
-/var/log/zarafa/monitor\.log -- gen_context(system_u:object_r:zarafa_monitor_log_t,s0) |
47 |
-/var/log/zarafa/server\.log -- gen_context(system_u:object_r:zarafa_server_log_t,s0) |
48 |
-/var/log/zarafa/spooler\.log -- gen_context(system_u:object_r:zarafa_spooler_log_t,s0) |
49 |
+/var/log/zarafa/dagent\.log.* -- gen_context(system_u:object_r:zarafa_deliver_log_t,s0) |
50 |
+/var/log/zarafa/gateway\.log.* -- gen_context(system_u:object_r:zarafa_gateway_log_t,s0) |
51 |
+/var/log/zarafa/ical\.log.* -- gen_context(system_u:object_r:zarafa_ical_log_t,s0) |
52 |
+/var/log/zarafa/indexer\.log.* -- gen_context(system_u:object_r:zarafa_indexer_log_t,s0) |
53 |
+/var/log/zarafa/monitor\.log.* -- gen_context(system_u:object_r:zarafa_monitor_log_t,s0) |
54 |
+/var/log/zarafa/server\.log.* -- gen_context(system_u:object_r:zarafa_server_log_t,s0) |
55 |
+/var/log/zarafa/spooler\.log.* -- gen_context(system_u:object_r:zarafa_spooler_log_t,s0) |
56 |
|
57 |
/var/run/zarafa -s gen_context(system_u:object_r:zarafa_server_var_run_t,s0) |
58 |
+/var/run/zarafa-dagent\.pid -- gen_context(system_u:object_r:zarafa_deliver_var_run_t,s0) |
59 |
/var/run/zarafa-gateway\.pid -- gen_context(system_u:object_r:zarafa_gateway_var_run_t,s0) |
60 |
/var/run/zarafa-ical\.pid -- gen_context(system_u:object_r:zarafa_ical_var_run_t,s0) |
61 |
-/var/run/zarafa-indexer -- gen_context(system_u:object_r:zarafa_indexer_var_run_t,s0) |
62 |
+/var/run/zarafa-indexer -s gen_context(system_u:object_r:zarafa_indexer_var_run_t,s0) |
63 |
+/var/run/zarafa-indexer\.pid -- gen_context(system_u:object_r:zarafa_indexer_var_run_t,s0) |
64 |
/var/run/zarafa-monitor\.pid -- gen_context(system_u:object_r:zarafa_monitor_var_run_t,s0) |
65 |
/var/run/zarafa-server\.pid -- gen_context(system_u:object_r:zarafa_server_var_run_t,s0) |
66 |
/var/run/zarafa-spooler\.pid -- gen_context(system_u:object_r:zarafa_spooler_var_run_t,s0) |
67 |
|
68 |
diff --git a/policy/modules/contrib/zarafa.if b/policy/modules/contrib/zarafa.if |
69 |
index 21ae664..36e32df 100644 |
70 |
--- a/policy/modules/contrib/zarafa.if |
71 |
+++ b/policy/modules/contrib/zarafa.if |
72 |
@@ -1,53 +1,55 @@ |
73 |
## <summary>Zarafa collaboration platform.</summary> |
74 |
|
75 |
-###################################### |
76 |
+####################################### |
77 |
## <summary> |
78 |
-## Creates types and rules for a basic |
79 |
-## zararfa init daemon domain. |
80 |
+## The template to define a zarafa domain. |
81 |
## </summary> |
82 |
-## <param name="prefix"> |
83 |
+## <param name="domain_prefix"> |
84 |
## <summary> |
85 |
-## Prefix for the domain. |
86 |
+## Domain prefix to be used. |
87 |
## </summary> |
88 |
## </param> |
89 |
# |
90 |
template(`zarafa_domain_template',` |
91 |
gen_require(` |
92 |
- attribute zarafa_domain; |
93 |
+ attribute zarafa_domain, zarafa_logfile, zarafa_pidfile; |
94 |
') |
95 |
|
96 |
- ############################## |
97 |
+ ######################################## |
98 |
# |
99 |
- # $1_t declarations |
100 |
+ # Declarations |
101 |
# |
102 |
|
103 |
type zarafa_$1_t, zarafa_domain; |
104 |
type zarafa_$1_exec_t; |
105 |
init_daemon_domain(zarafa_$1_t, zarafa_$1_exec_t) |
106 |
|
107 |
- type zarafa_$1_log_t; |
108 |
+ type zarafa_$1_log_t, zarafa_logfile; |
109 |
logging_log_file(zarafa_$1_log_t) |
110 |
|
111 |
- type zarafa_$1_var_run_t; |
112 |
+ type zarafa_$1_var_run_t, zarafa_pidfile; |
113 |
files_pid_file(zarafa_$1_var_run_t) |
114 |
|
115 |
- ############################## |
116 |
+ ######################################## |
117 |
# |
118 |
- # $1_t local policy |
119 |
+ # Policy |
120 |
# |
121 |
|
122 |
manage_files_pattern(zarafa_$1_t, zarafa_$1_var_run_t, zarafa_$1_var_run_t) |
123 |
manage_sock_files_pattern(zarafa_$1_t, zarafa_$1_var_run_t, zarafa_$1_var_run_t) |
124 |
files_pid_filetrans(zarafa_$1_t, zarafa_$1_var_run_t, { file sock_file }) |
125 |
|
126 |
- manage_files_pattern(zarafa_$1_t, zarafa_$1_log_t, zarafa_$1_log_t) |
127 |
- logging_log_filetrans(zarafa_$1_t, zarafa_$1_log_t, { file }) |
128 |
+ append_files_pattern(zarafa_$1_t, zarafa_$1_log_t, zarafa_$1_log_t) |
129 |
+ create_files_pattern(zarafa_$1_t, zarafa_$1_log_t, zarafa_$1_log_t) |
130 |
+ setattr_files_pattern(zarafa_$1_t, zarafa_$1_log_t, zarafa_$1_log_t) |
131 |
+ logging_log_filetrans(zarafa_$1_t, zarafa_$1_log_t, file) |
132 |
+ |
133 |
+ auth_use_nsswitch(zarafa_$1_t) |
134 |
') |
135 |
|
136 |
###################################### |
137 |
## <summary> |
138 |
-## Allow the specified domain to search |
139 |
-## zarafa configuration dirs. |
140 |
+## search zarafa configuration directories. |
141 |
## </summary> |
142 |
## <param name="domain"> |
143 |
## <summary> |
144 |
@@ -66,7 +68,7 @@ interface(`zarafa_search_config',` |
145 |
|
146 |
######################################## |
147 |
## <summary> |
148 |
-## Execute a domain transition to run zarafa_deliver. |
149 |
+## Execute a domain transition to run zarafa deliver. |
150 |
## </summary> |
151 |
## <param name="domain"> |
152 |
## <summary> |
153 |
@@ -79,12 +81,13 @@ interface(`zarafa_domtrans_deliver',` |
154 |
type zarafa_deliver_t, zarafa_deliver_exec_t; |
155 |
') |
156 |
|
157 |
+ corecmd_search_bin($1) |
158 |
domtrans_pattern($1, zarafa_deliver_exec_t, zarafa_deliver_t) |
159 |
') |
160 |
|
161 |
######################################## |
162 |
## <summary> |
163 |
-## Execute a domain transition to run zarafa_server. |
164 |
+## Execute a domain transition to run zarafa server. |
165 |
## </summary> |
166 |
## <param name="domain"> |
167 |
## <summary> |
168 |
@@ -97,12 +100,14 @@ interface(`zarafa_domtrans_server',` |
169 |
type zarafa_server_t, zarafa_server_exec_t; |
170 |
') |
171 |
|
172 |
+ corecmd_search_bin($1) |
173 |
domtrans_pattern($1, zarafa_server_exec_t, zarafa_server_t) |
174 |
') |
175 |
|
176 |
####################################### |
177 |
## <summary> |
178 |
-## Connect to zarafa-server unix domain stream socket. |
179 |
+## Connect to zarafa server with a unix |
180 |
+## domain stream socket. |
181 |
## </summary> |
182 |
## <param name="domain"> |
183 |
## <summary> |
184 |
@@ -118,3 +123,52 @@ interface(`zarafa_stream_connect_server',` |
185 |
files_search_var_lib($1) |
186 |
stream_connect_pattern($1, zarafa_server_var_run_t, zarafa_server_var_run_t, zarafa_server_t) |
187 |
') |
188 |
+ |
189 |
+######################################## |
190 |
+## <summary> |
191 |
+## All of the rules required to |
192 |
+## administrate an zarafa environment. |
193 |
+## </summary> |
194 |
+## <param name="domain"> |
195 |
+## <summary> |
196 |
+## Domain allowed access. |
197 |
+## </summary> |
198 |
+## </param> |
199 |
+## <param name="role"> |
200 |
+## <summary> |
201 |
+## Role allowed access. |
202 |
+## </summary> |
203 |
+## </param> |
204 |
+## <rolecap/> |
205 |
+# |
206 |
+interface(`zarafa_admin',` |
207 |
+ gen_require(` |
208 |
+ attribute zarafa_domain, zarafa_logfile, zarafa_pidfile; |
209 |
+ type zarafa_etc_t, zarafa_initrc_exec_t, zarafa_deliver_tmp_t; |
210 |
+ type zarafa_indexer_tmp_t, zarafa_server_tmp_t, zarafa_share_t; |
211 |
+ type zarafa_var_lib_t; |
212 |
+ ') |
213 |
+ |
214 |
+ allow $1 zarafa_domain:process { ptrace signal_perms }; |
215 |
+ ps_process_pattern($1, zarafa_domain) |
216 |
+ |
217 |
+ init_labeled_script_domtrans($1, zarafa_initrc_exec_t) |
218 |
+ domain_system_change_exemption($1) |
219 |
+ role_transition $2 zarafa_initrc_exec_t system_r; |
220 |
+ allow $2 system_r; |
221 |
+ |
222 |
+ files_search_etc($1) |
223 |
+ admin_pattern($1, zarafa_etc_t) |
224 |
+ |
225 |
+ files_search_tmp($1) |
226 |
+ admin_pattern($1, { zarafa_deliver_tmp_t zarafa_indexer_tmp_t zarafa_server_tmp_t }) |
227 |
+ |
228 |
+ logging_search_log($1) |
229 |
+ admin_pattern($1, zarafa_logfile) |
230 |
+ |
231 |
+ files_search_var_lib($1) |
232 |
+ admin_pattern($1, { zarafa_var_lib_t zarafa_share_t }) |
233 |
+ |
234 |
+ files_search_pids($1) |
235 |
+ admin_pattern($1, zarafa_pidfile) |
236 |
+') |
237 |
|
238 |
diff --git a/policy/modules/contrib/zarafa.te b/policy/modules/contrib/zarafa.te |
239 |
index 91267bc..95ee5f1 100644 |
240 |
--- a/policy/modules/contrib/zarafa.te |
241 |
+++ b/policy/modules/contrib/zarafa.te |
242 |
@@ -1,4 +1,4 @@ |
243 |
-policy_module(zarafa, 1.1.0) |
244 |
+policy_module(zarafa, 1.1.1) |
245 |
|
246 |
######################################## |
247 |
# |
248 |
@@ -6,6 +6,8 @@ policy_module(zarafa, 1.1.0) |
249 |
# |
250 |
|
251 |
attribute zarafa_domain; |
252 |
+attribute zarafa_logfile; |
253 |
+attribute zarafa_pidfile; |
254 |
|
255 |
zarafa_domain_template(deliver) |
256 |
|
257 |
@@ -15,9 +17,16 @@ files_tmp_file(zarafa_deliver_tmp_t) |
258 |
type zarafa_etc_t; |
259 |
files_config_file(zarafa_etc_t) |
260 |
|
261 |
+type zarafa_initrc_exec_t; |
262 |
+init_script_file(zarafa_initrc_exec_t) |
263 |
+ |
264 |
zarafa_domain_template(gateway) |
265 |
zarafa_domain_template(ical) |
266 |
zarafa_domain_template(indexer) |
267 |
+ |
268 |
+type zarafa_indexer_tmp_t; |
269 |
+files_tmp_file(zarafa_indexer_tmp_t) |
270 |
+ |
271 |
zarafa_domain_template(monitor) |
272 |
zarafa_domain_template(server) |
273 |
|
274 |
@@ -34,66 +43,62 @@ files_tmp_file(zarafa_var_lib_t) |
275 |
|
276 |
######################################## |
277 |
# |
278 |
-# zarafa-deliver local policy |
279 |
+# Deliver local policy |
280 |
# |
281 |
|
282 |
manage_dirs_pattern(zarafa_deliver_t, zarafa_deliver_tmp_t, zarafa_deliver_tmp_t) |
283 |
manage_files_pattern(zarafa_deliver_t, zarafa_deliver_tmp_t, zarafa_deliver_tmp_t) |
284 |
files_tmp_filetrans(zarafa_deliver_t, zarafa_deliver_tmp_t, { file dir }) |
285 |
|
286 |
-auth_use_nsswitch(zarafa_deliver_t) |
287 |
- |
288 |
######################################## |
289 |
# |
290 |
-# zarafa_gateway local policy |
291 |
+# Gateway local policy |
292 |
# |
293 |
|
294 |
-allow zarafa_gateway_t self:capability { chown kill }; |
295 |
-allow zarafa_gateway_t self:process setrlimit; |
296 |
- |
297 |
corenet_all_recvfrom_unlabeled(zarafa_gateway_t) |
298 |
corenet_all_recvfrom_netlabel(zarafa_gateway_t) |
299 |
corenet_tcp_sendrecv_generic_if(zarafa_gateway_t) |
300 |
corenet_tcp_sendrecv_generic_node(zarafa_gateway_t) |
301 |
-corenet_tcp_sendrecv_all_ports(zarafa_gateway_t) |
302 |
corenet_tcp_bind_generic_node(zarafa_gateway_t) |
303 |
-corenet_tcp_bind_pop_port(zarafa_gateway_t) |
304 |
|
305 |
-auth_use_nsswitch(zarafa_gateway_t) |
306 |
+corenet_sendrecv_pop_server_packets(zarafa_gateway_t) |
307 |
+corenet_tcp_bind_pop_port(zarafa_gateway_t) |
308 |
+corenet_tcp_sendrecv_pop_port(zarafa_gateway_t) |
309 |
|
310 |
####################################### |
311 |
# |
312 |
-# zarafa-ical local policy |
313 |
+# Ical local policy |
314 |
# |
315 |
|
316 |
-allow zarafa_ical_t self:capability chown; |
317 |
- |
318 |
corenet_all_recvfrom_unlabeled(zarafa_ical_t) |
319 |
corenet_all_recvfrom_netlabel(zarafa_ical_t) |
320 |
corenet_tcp_sendrecv_generic_if(zarafa_ical_t) |
321 |
corenet_tcp_sendrecv_generic_node(zarafa_ical_t) |
322 |
-corenet_tcp_sendrecv_all_ports(zarafa_ical_t) |
323 |
corenet_tcp_bind_generic_node(zarafa_ical_t) |
324 |
-corenet_tcp_bind_http_cache_port(zarafa_ical_t) |
325 |
|
326 |
-auth_use_nsswitch(zarafa_ical_t) |
327 |
+corenet_sendrecv_http_cache_client_packets(zarafa_ical_t) |
328 |
+corenet_tcp_bind_http_cache_port(zarafa_ical_t) |
329 |
+corenet_tcp_sendrecv_http_cache_port(zarafa_ical_t) |
330 |
|
331 |
###################################### |
332 |
# |
333 |
-# zarafa-monitor local policy |
334 |
+# Indexer local policy |
335 |
# |
336 |
|
337 |
-allow zarafa_monitor_t self:capability chown; |
338 |
+manage_dirs_pattern(zarafa_indexer_t, zarafa_indexer_tmp_t, zarafa_indexer_tmp_t) |
339 |
+manage_files_pattern(zarafa_indexer_t, zarafa_indexer_tmp_t, zarafa_indexer_tmp_t) |
340 |
+files_tmp_filetrans(zarafa_indexer_t, zarafa_indexer_tmp_t, { file dir }) |
341 |
|
342 |
-auth_use_nsswitch(zarafa_monitor_t) |
343 |
+manage_dirs_pattern(zarafa_indexer_t, zarafa_var_lib_t, zarafa_var_lib_t) |
344 |
+manage_files_pattern(zarafa_indexer_t, zarafa_var_lib_t, zarafa_var_lib_t) |
345 |
+manage_lnk_files_pattern(zarafa_indexer_t, zarafa_var_lib_t, zarafa_var_lib_t) |
346 |
|
347 |
######################################## |
348 |
# |
349 |
-# zarafa_server local policy |
350 |
+# Server local policy |
351 |
# |
352 |
|
353 |
-allow zarafa_server_t self:capability { chown kill net_bind_service }; |
354 |
-allow zarafa_server_t self:process setrlimit; |
355 |
+allow zarafa_server_t self:capability net_bind_service; |
356 |
|
357 |
manage_dirs_pattern(zarafa_server_t, zarafa_server_tmp_t, zarafa_server_tmp_t) |
358 |
manage_files_pattern(zarafa_server_t, zarafa_server_tmp_t, zarafa_server_tmp_t) |
359 |
@@ -101,7 +106,8 @@ files_tmp_filetrans(zarafa_server_t, zarafa_server_tmp_t, { file dir }) |
360 |
|
361 |
manage_dirs_pattern(zarafa_server_t, zarafa_var_lib_t, zarafa_var_lib_t) |
362 |
manage_files_pattern(zarafa_server_t, zarafa_var_lib_t, zarafa_var_lib_t) |
363 |
-files_var_lib_filetrans(zarafa_server_t, zarafa_var_lib_t, { file dir }) |
364 |
+manage_lnk_files_pattern(zarafa_server_t, zarafa_var_lib_t, zarafa_var_lib_t) |
365 |
+files_var_lib_filetrans(zarafa_server_t, zarafa_var_lib_t, { file dir lnk_file }) |
366 |
|
367 |
stream_connect_pattern(zarafa_server_t, zarafa_indexer_var_run_t, zarafa_indexer_var_run_t, zarafa_indexer_t) |
368 |
|
369 |
@@ -109,56 +115,56 @@ corenet_all_recvfrom_unlabeled(zarafa_server_t) |
370 |
corenet_all_recvfrom_netlabel(zarafa_server_t) |
371 |
corenet_tcp_sendrecv_generic_if(zarafa_server_t) |
372 |
corenet_tcp_sendrecv_generic_node(zarafa_server_t) |
373 |
-corenet_tcp_sendrecv_all_ports(zarafa_server_t) |
374 |
corenet_tcp_bind_generic_node(zarafa_server_t) |
375 |
+ |
376 |
+corenet_sendrecv_zarafa_server_packets(zarafa_server_t) |
377 |
corenet_tcp_bind_zarafa_port(zarafa_server_t) |
378 |
+corenet_tcp_sendrecv_zarafa_port(zarafa_server_t) |
379 |
|
380 |
files_read_usr_files(zarafa_server_t) |
381 |
|
382 |
-auth_use_nsswitch(zarafa_server_t) |
383 |
- |
384 |
-logging_send_syslog_msg(zarafa_server_t) |
385 |
logging_send_audit_msgs(zarafa_server_t) |
386 |
|
387 |
-sysnet_dns_name_resolve(zarafa_server_t) |
388 |
- |
389 |
optional_policy(` |
390 |
kerberos_use(zarafa_server_t) |
391 |
') |
392 |
|
393 |
optional_policy(` |
394 |
mysql_stream_connect(zarafa_server_t) |
395 |
+ mysql_tcp_connect(zarafa_server_t) |
396 |
+') |
397 |
+ |
398 |
+optional_policy(` |
399 |
+ postgresql_stream_connect(zarafa_server_t) |
400 |
+ postgresql_tcp_connect(zarafa_server_t) |
401 |
') |
402 |
|
403 |
######################################## |
404 |
# |
405 |
-# zarafa_spooler local policy |
406 |
+# Spooler local policy |
407 |
# |
408 |
|
409 |
-allow zarafa_spooler_t self:capability { chown kill }; |
410 |
- |
411 |
can_exec(zarafa_spooler_t, zarafa_spooler_exec_t) |
412 |
|
413 |
corenet_all_recvfrom_unlabeled(zarafa_spooler_t) |
414 |
corenet_all_recvfrom_netlabel(zarafa_spooler_t) |
415 |
corenet_tcp_sendrecv_generic_if(zarafa_spooler_t) |
416 |
corenet_tcp_sendrecv_generic_node(zarafa_spooler_t) |
417 |
-corenet_tcp_sendrecv_all_ports(zarafa_spooler_t) |
418 |
-corenet_tcp_connect_smtp_port(zarafa_spooler_t) |
419 |
|
420 |
-auth_use_nsswitch(zarafa_spooler_t) |
421 |
+corenet_sendrecv_smtp_client_packets(zarafa_spooler_t) |
422 |
+corenet_tcp_connect_smtp_port(zarafa_spooler_t) |
423 |
+corenet_tcp_sendrecv_smtp_port(zarafa_spooler_t) |
424 |
|
425 |
######################################## |
426 |
# |
427 |
-# zarafa domains local policy |
428 |
+# Zarafa domain local policy |
429 |
# |
430 |
|
431 |
-# bad permission on /etc/zarafa |
432 |
-allow zarafa_domain self:capability { dac_override setgid setuid }; |
433 |
-allow zarafa_domain self:process signal; |
434 |
+allow zarafa_domain self:capability { chown kill dac_override chown setgid setuid }; |
435 |
+allow zarafa_domain self:process { setrlimit signal }; |
436 |
allow zarafa_domain self:fifo_file rw_fifo_file_perms; |
437 |
-allow zarafa_domain self:tcp_socket create_stream_socket_perms; |
438 |
-allow zarafa_domain self:unix_stream_socket create_stream_socket_perms; |
439 |
+allow zarafa_domain self:tcp_socket { accept listen }; |
440 |
+allow zarafa_domain self:unix_stream_socket { accept listen }; |
441 |
|
442 |
stream_connect_pattern(zarafa_domain, zarafa_server_var_run_t, zarafa_server_var_run_t, zarafa_server_t) |
443 |
|
444 |
@@ -166,6 +172,9 @@ read_files_pattern(zarafa_domain, zarafa_etc_t, zarafa_etc_t) |
445 |
|
446 |
kernel_read_system_state(zarafa_domain) |
447 |
|
448 |
-files_read_etc_files(zarafa_domain) |
449 |
+dev_read_rand(zarafa_domain) |
450 |
+dev_read_urand(zarafa_domain) |
451 |
+ |
452 |
+logging_send_syslog_msg(zarafa_domain) |
453 |
|
454 |
miscfiles_read_localization(zarafa_domain) |