type batterysecret, domain; type batterysecret_exec, exec_type, vendor_file_type, file_type; type persist_subsys_file, vendor_persist_type, file_type; init_daemon_domain(batterysecret) r_dir_file(batterysecret, cgroup) r_dir_file(batterysecret, mnt_vendor_file) r_dir_file(batterysecret, vendor_sysfs_battery_supply) r_dir_file(batterysecret, sysfs_batteryinfo) r_dir_file(batterysecret, sysfs_type) r_dir_file(batterysecret, vendor_sysfs_usb_supply) r_dir_file(batterysecret, vendor_sysfs_usbpd_device) allow batterysecret { mnt_vendor_file persist_subsys_file rootfs }:dir rw_dir_perms; allow batterysecret { persist_subsys_file sysfs vendor_sysfs_battery_supply sysfs_usb vendor_sysfs_usb_supply vendor_sysfs_usbpd_device }:file w_file_perms; allow batterysecret kmsg_device:chr_file rw_file_perms; allow batterysecret self:netlink_kobject_uevent_socket create_socket_perms_no_ioctl; allow batterysecret self:global_capability_class_set { sys_tty_config sys_boot }; allow batterysecret self:capability { chown fsetid }; allow batterysecret { system_suspend_hwservice hidl_manager_hwservice }:hwservice_manager find; binder_call(batterysecret, system_suspend_server) wakelock_use(batterysecret)