blob: 8d71cfd3353b3dcca41ff7c1d3223b6fd642272a [file] [log] [blame]
# healthd - battery/charger monitoring service daemon
type healthd, domain;
type healthd_exec, exec_type, file_type;
# Write to /dev/kmsg
allow healthd kmsg_device:chr_file rw_file_perms;
# Read access to pseudo filesystems.
r_dir_file(healthd, sysfs_type)
r_dir_file(healthd, rootfs)
r_dir_file(healthd, cgroup)
# Read access to system files for passthrough HALs in
# /{system,vendor,odm}/lib[64]/hw/
r_dir_file(healthd, system_file)
allow healthd self:capability { net_admin sys_tty_config };
wakelock_use(healthd)
allow healthd self:netlink_kobject_uevent_socket create_socket_perms_no_ioctl;
binder_use(healthd)
binder_service(healthd)
binder_call(healthd, system_server)
binder_call(healthd, hwservicemanager)
binder_call(healthd, hal_health)
allow healthd sysfs_batteryinfo:file r_file_perms;
allow healthd batteryproperties_service:service_manager { add find };
# healthd can fake the battery existense if ro.boot.fake_battery is set
get_prop(healthd, system_prop)