Mulu He | 738a29d | 2014-10-27 16:19:16 +0800 | [diff] [blame] | 1 | #integrated process |
Biswajit Paul | 6786a92 | 2017-03-16 11:53:53 -0700 | [diff] [blame] | 2 | type mmi, domain; |
Ravi Kumar Siddojigari | c7def12 | 2017-06-13 00:49:19 +0530 | [diff] [blame] | 3 | type mmi_exec, exec_type, vendor_file_type, file_type; |
Mulu He | 738a29d | 2014-10-27 16:19:16 +0800 | [diff] [blame] | 4 | |
| 5 | #started by init |
| 6 | init_daemon_domain(mmi) |
| 7 | |
| 8 | #self capability |
Biswajit Paul | 2d35d98 | 2017-02-01 17:40:10 -0800 | [diff] [blame] | 9 | allow mmi self:socket create_socket_perms_no_ioctl; |
| 10 | allow mmi self:{ netlink_socket netlink_generic_socket } create_socket_perms_no_ioctl; |
| 11 | allow mmi self:udp_socket create_socket_perms_no_ioctl; |
muluhe | cf9aad1 | 2015-05-28 15:52:11 +0800 | [diff] [blame] | 12 | allow mmi self:capability { sys_nice dac_override setuid setgid fowner chown fsetid kill net_admin sys_module net_raw}; |
taozhang | 49b68dc | 2016-09-28 15:37:12 +0800 | [diff] [blame] | 13 | allow mmi self:capability2 wake_alarm; |
Mulu He | 738a29d | 2014-10-27 16:19:16 +0800 | [diff] [blame] | 14 | |
| 15 | #For various devices |
muluhe | cf9aad1 | 2015-05-28 15:52:11 +0800 | [diff] [blame] | 16 | allow mmi sysfs:file w_file_perms; |
| 17 | allow mmi graphics_device:dir r_dir_perms; |
Mulu He | 738a29d | 2014-10-27 16:19:16 +0800 | [diff] [blame] | 18 | allow mmi graphics_device:chr_file rw_file_perms; |
| 19 | allow mmi input_device:chr_file r_file_perms; |
muluhe | cf9aad1 | 2015-05-28 15:52:11 +0800 | [diff] [blame] | 20 | allow mmi input_device:dir r_dir_perms; |
Mulu He | 738a29d | 2014-10-27 16:19:16 +0800 | [diff] [blame] | 21 | allow mmi nfc_device:chr_file rw_file_perms; |
Ravi Kumar Siddojigari | c7def12 | 2017-06-13 00:49:19 +0530 | [diff] [blame] | 22 | allow mmi vendor_shell_exec:file rx_file_perms; |
Avijit Kanti Das | 441bad4 | 2015-05-12 14:07:41 -0700 | [diff] [blame] | 23 | wakelock_use(mmi) |
Mulu He | 738a29d | 2014-10-27 16:19:16 +0800 | [diff] [blame] | 24 | |
| 25 | #FTM_AP folder permissions |
muluhe | cf9aad1 | 2015-05-28 15:52:11 +0800 | [diff] [blame] | 26 | file_type_auto_trans(mmi, cache_file, mmi_data_file); |
Mulu He | 738a29d | 2014-10-27 16:19:16 +0800 | [diff] [blame] | 27 | allow mmi mmi_data_file:dir rw_dir_perms; |
muluhe | cf9aad1 | 2015-05-28 15:52:11 +0800 | [diff] [blame] | 28 | allow mmi mmi_data_file:file create_file_perms; |
Mulu He | 738a29d | 2014-10-27 16:19:16 +0800 | [diff] [blame] | 29 | |
| 30 | #socket |
muluhe | cf9aad1 | 2015-05-28 15:52:11 +0800 | [diff] [blame] | 31 | allow mmi socket_device:dir w_dir_perms; |
Mulu He | 738a29d | 2014-10-27 16:19:16 +0800 | [diff] [blame] | 32 | |
muluhe | cf9aad1 | 2015-05-28 15:52:11 +0800 | [diff] [blame] | 33 | #allow mmi set system prop,sensor need write persist |
sahil madeka | a3608c9 | 2017-05-12 15:41:40 -0700 | [diff] [blame] | 34 | set_prop(mmi, powerctl_prop) |
muluhe | cf9aad1 | 2015-05-28 15:52:11 +0800 | [diff] [blame] | 35 | allow mmi persist_file:dir r_dir_perms; |
| 36 | allow mmi sensors_persist_file:dir create_dir_perms; |
| 37 | allow mmi sensors_persist_file:file create_file_perms; |
Mulu He | 738a29d | 2014-10-27 16:19:16 +0800 | [diff] [blame] | 38 | |
muluhe | cf9aad1 | 2015-05-28 15:52:11 +0800 | [diff] [blame] | 39 | #wifi case |
| 40 | allow mmi system_file:file x_file_perms; |
Divya Sharma | 7caea0a | 2017-03-06 15:36:22 -0800 | [diff] [blame] | 41 | #allow mmi wpa_exec:file rx_file_perms; |
muluhe | cf9aad1 | 2015-05-28 15:52:11 +0800 | [diff] [blame] | 42 | allow mmi wcnss_service_exec:file rx_file_perms; |
| 43 | allow mmi kernel:key search; |
| 44 | allow mmi kernel:system module_request; |
Ravi Kumar Siddojigari | c7def12 | 2017-06-13 00:49:19 +0530 | [diff] [blame] | 45 | allow mmi vendor_toolbox_exec:file rx_file_perms; |
taozhang | d316c27 | 2016-08-15 11:00:23 +0800 | [diff] [blame] | 46 | allow mmi system_file:system module_load; |
muluhe | cf9aad1 | 2015-05-28 15:52:11 +0800 | [diff] [blame] | 47 | |
| 48 | #audio case |
| 49 | allow mmi audio_device:dir r_dir_perms; |
| 50 | allow mmi audio_device:chr_file rw_file_perms; |
| 51 | |
| 52 | #FM case |
| 53 | allow mmi fm_radio_device:chr_file r_file_perms; |
taozhang | af844b8 | 2015-11-04 14:50:25 +0800 | [diff] [blame] | 54 | allow mmi fm_data_file:file r_file_perms; |
sahil madeka | a3608c9 | 2017-05-12 15:41:40 -0700 | [diff] [blame] | 55 | set_prop(mmi, fm_prop) |
| 56 | set_prop(mmi, ctl_default_prop) |
muluhe | cf9aad1 | 2015-05-28 15:52:11 +0800 | [diff] [blame] | 57 | #bluetooth case |
| 58 | allow mmi bluetooth_data_file:dir rw_dir_perms; |
| 59 | allow mmi bluetooth_data_file:file create_file_perms; |
sahil madeka | a3608c9 | 2017-05-12 15:41:40 -0700 | [diff] [blame] | 60 | set_prop(mmi, bluetooth_prop) |
muluhe | cf9aad1 | 2015-05-28 15:52:11 +0800 | [diff] [blame] | 61 | allow mmi smd_device:chr_file rw_file_perms; |
taozhang | 7b47a75 | 2016-11-01 18:17:28 +0800 | [diff] [blame] | 62 | allow mmi persist_bluetooth_file:file r_file_perms; |
| 63 | allow mmi wcnss_filter:unix_stream_socket connectto; |
muluhe | cf9aad1 | 2015-05-28 15:52:11 +0800 | [diff] [blame] | 64 | |
| 65 | #GPS case |
| 66 | allow mmi location_data_file:fifo_file create_file_perms; |
taozhang | af844b8 | 2015-11-04 14:50:25 +0800 | [diff] [blame] | 67 | allow mmi location_data_file:dir create_dir_perms; |
| 68 | allow mmi location_data_file:file create_file_perms; |
muluhe | cf9aad1 | 2015-05-28 15:52:11 +0800 | [diff] [blame] | 69 | allow mmi mmi_socket:sock_file create_file_perms; |
| 70 | type_transition mmi socket_device:sock_file mmi_socket; |
| 71 | allow mmi location_exec:file rx_file_perms; |
| 72 | allow mmi smem_log_device:chr_file rw_file_perms; |
| 73 | allow mmi ssr_device:chr_file r_file_perms; |
| 74 | |
| 75 | #SD card case |
| 76 | allow mmi sd_device:blk_file rw_file_perms; |
| 77 | allow mmi block_device:blk_file getattr; |
| 78 | allow mmi block_device:dir r_dir_perms; |
| 79 | |
| 80 | #camera |
muluhe | cf9aad1 | 2015-05-28 15:52:11 +0800 | [diff] [blame] | 81 | allow mmi video_device:chr_file rw_file_perms; |
| 82 | allow mmi camera_data_file:sock_file write; |
| 83 | allow mmi camera_data_file:dir r_dir_perms; |
| 84 | allow mmi mm-qcamerad:unix_dgram_socket sendto; |
| 85 | |
| 86 | #nfc case |
| 87 | allow mmi nfc_data_file:dir rw_dir_perms; |
| 88 | allow mmi nfc_data_file:file create_file_perms; |
| 89 | |
| 90 | #simcard |
| 91 | qmux_socket(mmi); |
| 92 | |
| 93 | #allow mmi access chgdiabled prop |
sahil madeka | a3608c9 | 2017-05-12 15:41:40 -0700 | [diff] [blame] | 94 | set_prop(mmi, chgdiabled_prop) |
muluhe | cf9aad1 | 2015-05-28 15:52:11 +0800 | [diff] [blame] | 95 | #Allow mmi operate on surfaceflinger |
| 96 | allow mmi surfaceflinger:fd use; |
Ravi Kumar Siddojigari | c7def12 | 2017-06-13 00:49:19 +0530 | [diff] [blame] | 97 | #allow mmi surfaceflinger_service:service_manager find; |
muluhe | cf9aad1 | 2015-05-28 15:52:11 +0800 | [diff] [blame] | 98 | |
taozhang | c39c653 | 2017-06-13 18:04:25 +0800 | [diff] [blame] | 99 | #Allow mmi operate on graphics |
| 100 | hal_client_domain(mmi, hal_graphics_allocator); |
| 101 | |
| 102 | #Allow mmi operate on hwservicemanager |
| 103 | hwbinder_use(hwservicemanager); |
| 104 | get_prop(mmi, hwservicemanager_prop); |
| 105 | |
| 106 | #Allow mmi operate ion_device |
| 107 | allow mmi ion_device:chr_file r_file_perms; |
| 108 | |
taozhang | 68f98a8 | 2017-06-13 18:04:25 +0800 | [diff] [blame] | 109 | #Allow mmi operate on graphics |
| 110 | hal_client_domain(mmi, hal_graphics_allocator); |
| 111 | |
| 112 | #Allow mmi operate on hwservicemanager |
| 113 | hwbinder_use(hwservicemanager); |
| 114 | get_prop(mmi, hwservicemanager_prop); |
| 115 | |
| 116 | #Allow mmi operate ion_device |
| 117 | allow mmi ion_device:chr_file r_file_perms; |
| 118 | |
muluhe | cf9aad1 | 2015-05-28 15:52:11 +0800 | [diff] [blame] | 119 | #Allow mmi to use IPC |
Ravi Kumar Siddojigari | c7def12 | 2017-06-13 00:49:19 +0530 | [diff] [blame] | 120 | #binder_use(mmi) |
muluhe | 08d63cc | 2015-09-10 13:39:17 +0800 | [diff] [blame] | 121 | binder_call(mmi,surfaceflinger) |
taozhang | af844b8 | 2015-11-04 14:50:25 +0800 | [diff] [blame] | 122 | |
| 123 | #sensor cases |
| 124 | unix_socket_connect(mmi, sensors, sensors); |
| 125 | allow mmi sensors_device:chr_file r_file_perms; |
| 126 | |
| 127 | #logcat |
Siddeswar Aluganti | 759e189 | 2017-01-12 18:25:28 -0800 | [diff] [blame] | 128 | #domain_auto_trans(mmi, logcat_exec, logd); |
taozhang | af844b8 | 2015-11-04 14:50:25 +0800 | [diff] [blame] | 129 | |
Mulu he | e4b42d0 | 2016-08-04 13:15:31 +0800 | [diff] [blame] | 130 | #access kmsg device for logging |
| 131 | allow mmi kmsg_device:chr_file rw_file_perms; |
| 132 | |
taozhang | af844b8 | 2015-11-04 14:50:25 +0800 | [diff] [blame] | 133 | #mmi test |
| 134 | unix_socket_connect(mmi, cnd, cnd); |
taozhang | af844b8 | 2015-11-04 14:50:25 +0800 | [diff] [blame] | 135 | unix_socket_connect(mmi, netmgrd, netmgrd); |
| 136 | net_domain(mmi); |
muluhe | 11f9084 | 2016-09-06 18:08:28 +0800 | [diff] [blame] | 137 | |
Mulu He | 2722629 | 2017-08-08 15:30:41 +0800 | [diff] [blame] | 138 | #mmi to start:mmid/ftmdaemon/mm-audio-ftm application |
| 139 | allow mmi mmi_exec:file execute_no_trans; |
| 140 | allow mmi proc:file r_file_perms; |
| 141 | allow mmi sysfs_battery_supply:dir search; |
| 142 | allow mmi sysfs_battery_supply:file rw_file_perms; |
| 143 | allow mmi sysfs_pon_dev:file rw_file_perms; |
| 144 | |
taozhang | 038ec87 | 2017-08-14 16:14:37 +0800 | [diff] [blame] | 145 | #read sysfs to operate LEDs |
| 146 | allow mmi sysfs_leds:dir r_dir_perms; |
| 147 | allow mmi sysfs_leds:lnk_file r_file_perms; |
taozhang | c74fe10 | 2017-09-29 15:54:32 +0800 | [diff] [blame] | 148 | allow mmi sysfs_leds:file rw_file_perms; |
taozhang | 038ec87 | 2017-08-14 16:14:37 +0800 | [diff] [blame] | 149 | allow mmi sysfs_graphics:dir r_dir_perms; |
| 150 | allow mmi sysfs_graphics:file rw_file_perms; |
| 151 | |
muluhe | 11f9084 | 2016-09-06 18:08:28 +0800 | [diff] [blame] | 152 | #allow mmi access boot mode switch |
sahil madeka | a3608c9 | 2017-05-12 15:41:40 -0700 | [diff] [blame] | 153 | set_prop(mmi, boot_mode_prop) |
Biswajit Paul | 277acbb | 2016-07-20 12:02:14 -0700 | [diff] [blame] | 154 | #diag |
| 155 | userdebug_or_eng(` |
| 156 | diag_use(mmi) |
| 157 | ') |