diff --git a/racoon.te b/racoon.te index 12955f210263563f427b38c1527b3b854a6adaf0..596cf7ee3a697c72c88e6f17188ab4e3fc0d5fd2 100644 --- a/racoon.te +++ b/racoon.te @@ -1,5 +1,25 @@ # IKE key management daemon type racoon, domain; +permissive_or_unconfined(racoon) type racoon_exec, exec_type, file_type; -unconfined_domain(racoon) +init_daemon_domain(racoon) +typeattribute racoon mlstrustedsubject; + +binder_call(racoon, servicemanager) +binder_call(racoon, keystore) + +allow racoon tun_device:chr_file r_file_perms; +allow racoon cgroup:dir { add_name create }; +allow racoon kernel:system module_request; +allow racoon port:udp_socket name_bind; +allow racoon node:udp_socket node_bind; + +allow racoon self:{ key_socket udp_socket } create_socket_perms; +allow racoon self:tun_socket create; +allow racoon self:capability { net_admin net_bind_service net_raw setuid }; + +# XXX: should we give ip-up-vpn its own label (currently racoon domain) +allow racoon system_file:file rx_file_perms; +allow racoon vpn_data_file:file create_file_perms; +allow racoon vpn_data_file:dir w_dir_perms;