blob: ad8850e9dad5f8b227bc57de301058c9e85ed0c1 [file] [log] [blame]
Biswajit Paul6786a922017-03-16 11:53:53 -07001type mm-pp-daemon, domain;
Ravi Kumar Siddojigaric7def122017-06-13 00:49:19 +05302type mm-pp-daemon_exec, exec_type, vendor_file_type, file_type;
Avijit Kanti Das808ae2f2014-10-21 17:11:11 -07003
4init_daemon_domain(mm-pp-daemon)
5
Avijit Kanti Das808ae2f2014-10-21 17:11:11 -07006#Need to use fb ioctls to communicate with kernel
7allow mm-pp-daemon graphics_device:chr_file rw_file_perms;
Avijit Kanti Das441bad42015-05-12 14:07:41 -07008allow mm-pp-daemon graphics_device:dir r_dir_perms;
Avijit Kanti Das808ae2f2014-10-21 17:11:11 -07009
Nitesh Gupta29d4b6a2015-01-16 17:34:55 +053010# Allow reading/writing to '/persist/display/*'
Zohaib Alambbd41752014-11-13 09:12:02 -050011# The color config file is dynamically created
Nitesh Gupta29d4b6a2015-01-16 17:34:55 +053012allow mm-pp-daemon persist_display_file:dir rw_dir_perms;
13allow mm-pp-daemon persist_display_file:file create_file_perms;
14
15# Allow for directory search only to '/persist'
16allow mm-pp-daemon persist_file:dir search;
Avijit Kanti Das808ae2f2014-10-21 17:11:11 -070017
Zohaib Alambbd41752014-11-13 09:12:02 -050018# Allow reading/writing data config files
Bruno Martinsf689f7f2018-09-16 23:23:14 +010019allow mm-pp-daemon display_vendor_data_file:dir create_dir_perms;
20allow mm-pp-daemon display_vendor_data_file:file create_file_perms;
Zohaib Alambbd41752014-11-13 09:12:02 -050021
Nirmal Abraham117e8312014-12-01 17:20:56 +053022# Allow read to sensor device and read/write to sensor socket
23allow mm-pp-daemon sensors_device:chr_file r_file_perms;
24allow mm-pp-daemon sensors_socket:sock_file rw_file_perms;
25allow mm-pp-daemon sensors:unix_stream_socket connectto;
26
Zohaib Alambbd41752014-11-13 09:12:02 -050027
Rajesh Yadav51e4b842017-04-19 14:54:04 +053028# Rule for IPC communication
29allow mm-pp-daemon qdisplay_service:service_manager find;
30vndbinder_use(mm-pp-daemon)
31hal_client_domain(mm-pp-daemon, hal_graphics_composer)
32allow mm-pp-daemon fwk_sensor_hwservice:hwservice_manager find;
Ravi Kumar Siddojigaric7def122017-06-13 00:49:19 +053033# Allow service manager to find surface flinger service,
34# sensorservice service, permission_service, and power service (for
35# acquire wakelock)
36#allow mm-pp-daemon { surfaceflinger_service sensorservice_service
37# permission_service power_service }:service_manager find;
38# Allow mm-pp-daemon to call binder for screen refresh
39#binder_use(mm-pp-daemon)
Krishna Chaitanya Parimib96f8332015-01-16 11:08:29 +053040binder_call(mm-pp-daemon, system_server)
Krishna Chaitanya Parimib96f8332015-01-16 11:08:29 +053041
Avijit Kanti Das808ae2f2014-10-21 17:11:11 -070042userdebug_or_eng(`
Avijit Kanti Das441bad42015-05-12 14:07:41 -070043 # This allows pp-daemon to use shell commands to blank
44 # the display - it uses input keyevent to do this
Ravi Kumar Siddojigaric7def122017-06-13 00:49:19 +053045 allow mm-pp-daemon { vendor_shell_exec
46 #zygote_exec
47 }:file rx_file_perms;
Avijit Kanti Das441bad42015-05-12 14:07:41 -070048 allow mm-pp-daemon system_file:file x_file_perms;
49 allow mm-pp-daemon self:process ptrace;
Krishna Chaitanya Parimi8c8f3b42015-06-26 12:05:43 +053050
Nirmal Abraham77593382016-10-14 15:10:20 +053051
52 # This allow pp-daemon access to diag
53 diag_use(mm-pp-daemon)
Avijit Kanti Das808ae2f2014-10-21 17:11:11 -070054')
Zohaib Alambbd41752014-11-13 09:12:02 -050055
Rajesh Yadav51e4b842017-04-19 14:54:04 +053056# Allow mm-pp-daemon to change the brightness
57allow mm-pp-daemon sysfs_leds:dir r_dir_perms;
58allow mm-pp-daemon sysfs_leds:file rw_file_perms;
59allow mm-pp-daemon sysfs_leds:lnk_file read;
Ch Ganesh Kumarc04e4262017-06-08 19:51:24 +053060allow mm-pp-daemon sysfs_graphics:dir r_dir_perms;
Rajesh Yadav51e4b842017-04-19 14:54:04 +053061allow mm-pp-daemon sysfs_graphics:file rw_file_perms;
Sravan Kumar D.V.Nf1ae7352017-06-14 16:57:07 +053062allow mm-pp-daemon sysfs_data:file r_file_perms;
Zohaib Alambbd41752014-11-13 09:12:02 -050063
sahil madekaa3608c92017-05-12 15:41:40 -070064userdebug_or_eng(`
65set_prop(mm-pp-daemon, debug_prop)
66')
67
Zohaib Alambbd41752014-11-13 09:12:02 -050068# Allow socket calls in pp-daemon
Zohaib Alambbd41752014-11-13 09:12:02 -050069unix_socket_connect(mm-pp-daemon, pps, init)
Biswajit Paula1432652015-01-22 15:19:38 -080070
71allow mm-pp-daemon init:unix_stream_socket { listen accept };
Ping Lie7a5e642015-07-10 16:02:08 -070072
73# Allow connections between sensor manager and mm-pp-daemon
Ravi Kumar Siddojigaric7def122017-06-13 00:49:19 +053074#allow mm-pp-daemon system_server:unix_stream_socket rw_socket_perms;
Biswajit Paulf63bd142017-03-16 16:41:02 -070075
76# access lcd-backlight
77r_dir_file(mm-pp-daemon, sysfs_leds)