1# IKE key management daemon
2type racoon, domain;
3type racoon_exec, exec_type, file_type;
4
5typeattribute racoon mlstrustedsubject;
6
7net_domain(racoon)
8allowxperm racoon self:udp_socket ioctl { SIOCSIFFLAGS SIOCSIFADDR SIOCSIFNETMASK };
9
10binder_use(racoon)
11
12allow racoon tun_device:chr_file r_file_perms;
13allow racoon cgroup:dir { add_name create };
14allow racoon kernel:system module_request;
15
16allow racoon self:key_socket create_socket_perms_no_ioctl;
17allow racoon self:tun_socket create_socket_perms_no_ioctl;
18allow racoon self:global_capability_class_set { net_admin net_bind_service net_raw };
19
20# XXX: should we give ip-up-vpn its own label (currently racoon domain)
21allow racoon system_file:file rx_file_perms;
22not_full_treble(`allow racoon vendor_file:file rx_file_perms;')
23allow racoon vpn_data_file:file create_file_perms;
24allow racoon vpn_data_file:dir w_dir_perms;
25
26use_keystore(racoon)
27
28# Racoon (VPN) has a restricted set of permissions from the default.
29allow racoon keystore:keystore_key {
30	get
31	sign
32	verify
33};
34