type shal_livedisplay_default, coredomain, domain; hal_server_domain(shal_livedisplay_default, hal_lineage_livedisplay) type shal_livedisplay_default_exec, exec_type, file_type; init_daemon_domain(shal_livedisplay_default) # Allow LiveDisplay to perform binder IPC to vendor.display.color::IDisplayColor type hal_display_color_default, domain; binder_call(shal_livedisplay_default, hal_display_color_default) allow shal_livedisplay_default hal_display_color_hwservice:hwservice_manager find; # Talk to the binder device node allow shal_livedisplay_default binder_device:chr_file rw_file_perms; # Allow LiveDisplay to store files under /data/display and access them allow shal_livedisplay_default display_data_file:dir rw_dir_perms; allow shal_livedisplay_default display_data_file:file create_file_perms; # Allow LiveDisplay to access pps socket type mm-pp-daemon, domain; typeattribute mm-pp-daemon socket_between_core_and_vendor_violators; unix_socket_connect(shal_livedisplay_default, pps, mm-pp-daemon) # Allow LiveDisplay to read display props get_prop(shal_livedisplay_default, vendor_display_prop) # Grant LiveDisplay access over the control nodes allow shal_livedisplay_default sysfs_graphics:file rw_file_perms;