1#===============================================
2# Policy File of /system/bin/audiocmdservice_atci Executable File
3
4type audiocmdservice_atci_exec , exec_type, file_type;
5
6# New added for move to /system
7typeattribute audiocmdservice_atci coredomain;
8# ==============================================
9# MTK Policy Rule
10# ==============================================
11# audiocmdservice_atci - audio-daemon service
12init_daemon_domain(audiocmdservice_atci)
13
14# Perform Binder IPC for audio tuning tool and access to mediaserver
15binder_use(audiocmdservice_atci)
16binder_call(audiocmdservice_atci, mediaserver)
17allow audiocmdservice_atci mediaserver:dir w_dir_perms;
18allow audiocmdservice_atci mediaserver_service:service_manager find;
19
20# Since Android N, google separates mediaserver to audioserver and cameraserver
21binder_call(audiocmdservice_atci, audioserver)
22allow audiocmdservice_atci audioserver:dir w_dir_perms;
23allow audiocmdservice_atci audioserver_service:service_manager find;
24
25
26# Access to fuse file system
27allow audiocmdservice_atci sdcard_type:file create_file_perms;
28allow audiocmdservice_atci sdcard_type:dir w_dir_perms;
29
30# Access to internal storage
31allow audiocmdservice_atci media_rw_data_file:dir create_dir_perms;
32allow audiocmdservice_atci media_rw_data_file:file create_file_perms;
33
34hal_client_domain(audiocmdservice_atci, hal_audio)
35
36#To access the file at /dev/kmsg
37allow audiocmdservice_atci kmsg_device:chr_file w_file_perms;
38
39userdebug_or_eng(`
40  allow audiocmdservice_atci self:capability { sys_nice fowner chown fsetid setuid ipc_lock net_admin};
41')
42
43#audio-daemon needs to controlled from adb shell by AudioTuningTool
44allow shell audiocmdservice_atci_exec:file rx_file_perms;
45allow radio audiocmdservice_atci_exec:file getattr;
46
47#Android O porting
48hwbinder_use(audiocmdservice_atci)
49get_prop(audiocmdservice_atci, hwservicemanager_prop);
50