xref: /aosp_15_r20/system/sepolicy/prebuilts/api/30.0/public/racoon.te (revision e4a36f4174b17bbab9dc043f4a65dc8d87377290)
1*e4a36f41SAndroid Build Coastguard Worker# IKE key management daemon
2*e4a36f41SAndroid Build Coastguard Workertype racoon, domain;
3*e4a36f41SAndroid Build Coastguard Workertype racoon_exec, system_file_type, exec_type, file_type;
4*e4a36f41SAndroid Build Coastguard Worker
5*e4a36f41SAndroid Build Coastguard Workertypeattribute racoon mlstrustedsubject;
6*e4a36f41SAndroid Build Coastguard Worker
7*e4a36f41SAndroid Build Coastguard Workernet_domain(racoon)
8*e4a36f41SAndroid Build Coastguard Workerallowxperm racoon self:udp_socket ioctl { SIOCSIFFLAGS SIOCSIFADDR SIOCSIFNETMASK };
9*e4a36f41SAndroid Build Coastguard Worker
10*e4a36f41SAndroid Build Coastguard Workerbinder_use(racoon)
11*e4a36f41SAndroid Build Coastguard Worker
12*e4a36f41SAndroid Build Coastguard Workerallow racoon tun_device:chr_file r_file_perms;
13*e4a36f41SAndroid Build Coastguard Workerallowxperm racoon tun_device:chr_file ioctl TUNSETIFF;
14*e4a36f41SAndroid Build Coastguard Workerallow racoon cgroup:dir { add_name create };
15*e4a36f41SAndroid Build Coastguard Workerallow racoon kernel:system module_request;
16*e4a36f41SAndroid Build Coastguard Worker
17*e4a36f41SAndroid Build Coastguard Workerallow racoon self:key_socket create_socket_perms_no_ioctl;
18*e4a36f41SAndroid Build Coastguard Workerallow racoon self:tun_socket create_socket_perms_no_ioctl;
19*e4a36f41SAndroid Build Coastguard Workerallow racoon self:global_capability_class_set { net_admin net_bind_service net_raw };
20*e4a36f41SAndroid Build Coastguard Worker
21*e4a36f41SAndroid Build Coastguard Worker# XXX: should we give ip-up-vpn its own label (currently racoon domain)
22*e4a36f41SAndroid Build Coastguard Workerallow racoon system_file:file rx_file_perms;
23*e4a36f41SAndroid Build Coastguard Workernot_full_treble(`allow racoon vendor_file:file rx_file_perms;')
24*e4a36f41SAndroid Build Coastguard Workerallow racoon vpn_data_file:file create_file_perms;
25*e4a36f41SAndroid Build Coastguard Workerallow racoon vpn_data_file:dir w_dir_perms;
26*e4a36f41SAndroid Build Coastguard Worker
27*e4a36f41SAndroid Build Coastguard Workeruse_keystore(racoon)
28*e4a36f41SAndroid Build Coastguard Worker
29*e4a36f41SAndroid Build Coastguard Worker# Racoon (VPN) has a restricted set of permissions from the default.
30*e4a36f41SAndroid Build Coastguard Workerallow racoon keystore:keystore_key {
31*e4a36f41SAndroid Build Coastguard Worker	get
32*e4a36f41SAndroid Build Coastguard Worker	sign
33*e4a36f41SAndroid Build Coastguard Worker	verify
34*e4a36f41SAndroid Build Coastguard Worker};
35