1# phone subsystem
2type radio, domain, mlstrustedsubject;
3
4net_domain(radio)
5bluetooth_domain(radio)
6binder_service(radio)
7
8# Talks to hal_telephony_server via the rild socket only for devices without full treble
9not_full_treble(`unix_socket_connect(radio, rild, hal_telephony_server)')
10
11# Data file accesses.
12allow radio radio_data_file:dir create_dir_perms;
13allow radio radio_data_file:notdevfile_class_set create_file_perms;
14
15allow radio alarm_device:chr_file rw_file_perms;
16
17allow radio net_data_file:dir search;
18allow radio net_data_file:file r_file_perms;
19
20# Property service
21set_prop(radio, radio_prop)
22set_prop(radio, exported_radio_prop)
23set_prop(radio, exported2_radio_prop)
24set_prop(radio, exported3_radio_prop)
25set_prop(radio, net_radio_prop)
26
27# ctl interface
28set_prop(radio, ctl_rildaemon_prop)
29
30add_service(radio, radio_service)
31allow radio audioserver_service:service_manager find;
32allow radio cameraserver_service:service_manager find;
33allow radio drmserver_service:service_manager find;
34allow radio mediaserver_service:service_manager find;
35allow radio nfc_service:service_manager find;
36allow radio app_api_service:service_manager find;
37allow radio system_api_service:service_manager find;
38
39# Perform HwBinder IPC.
40hwbinder_use(radio)
41hal_client_domain(radio, hal_telephony)
42