4238b0e15d
This is the common type for domains that executes charger's functionalities, including setting and getting necessary properties, permissions to maintain the health loop, writing to kernel log, handling inputs and drawing screens, etc. Permissions specific to the system charger is not moved. Also enforce stricter neverallow rules on charger_{status,config}_prop. For charger_config_prop, only init / vendor_init can set. For charger_status_prop, only init / vendor_init / charger / health HAL can set. For both, only init / vendor_init / charger / dumpstate / health HAL can get. (Health HAL is determined by the intersection of charger_type and hal_health_server.) A follow up CL will be added to add charger_type to hal_health_default, the default domain for health HAL servers. Vendors may add charger_type to their domains that serves the health AIDL HAL as well. Test: manual Bug: 203246116 Change-Id: I0e99b6b68d381b7f73306d93ee4f8c5c8abdf026
20 lines
552 B
Text
20 lines
552 B
Text
typeattribute charger coredomain;
|
|
|
|
# charger needs to tell init to continue the boot
|
|
# process when running in charger mode.
|
|
# The system charger needs to be allowed to set these properties on legacy devices.
|
|
set_prop(charger, system_prop)
|
|
set_prop(charger, exported_system_prop)
|
|
set_prop(charger, exported3_system_prop)
|
|
|
|
# The system charger can read ro.charger.*
|
|
get_prop(charger, charger_prop)
|
|
|
|
compatible_property_only(`
|
|
neverallow {
|
|
domain
|
|
-init
|
|
-dumpstate
|
|
-charger
|
|
} charger_prop:file no_rw_file_perms;
|
|
')
|