From 2dda40afef2a4726128a42181de904425452ca6f Mon Sep 17 00:00:00 2001 From: Ken Yang Date: Thu, 5 Jan 2023 23:49:04 +0000 Subject: [PATCH] WLC: Cleanup the sysfs_wlc policies The sepolicy must be self-contained without including wirelss_charger to avoid build break in AOSP Bug: 263830018 Change-Id: Iff235b0c006474b59af853a19d01ba57c3dfe451 Signed-off-by: Ken Yang --- vendor/file.te | 3 +++ vendor/genfs_contexts | 10 ---------- vendor/hal_health_default.te | 1 - vendor/hal_wireless_charger.te | 2 ++ vendor/platform_app.te | 3 +++ vendor/service.te | 3 +++ vendor/service_contexts | 2 ++ vendor/system_app.te | 3 +++ 8 files changed, 16 insertions(+), 11 deletions(-) create mode 100644 vendor/hal_wireless_charger.te create mode 100644 vendor/platform_app.te create mode 100644 vendor/system_app.te diff --git a/vendor/file.te b/vendor/file.te index 038ee91f..41df26d4 100644 --- a/vendor/file.te +++ b/vendor/file.te @@ -12,3 +12,6 @@ type sysfs_trusty, sysfs_type, fs_type; # mount FS allow proc_vendor_sched proc:filesystem associate; allow bootdevice_sysdev sysfs:filesystem associate; + +# WLC +type sysfs_wlc, sysfs_type, fs_type; diff --git a/vendor/genfs_contexts b/vendor/genfs_contexts index c8bab6d9..01daa317 100644 --- a/vendor/genfs_contexts +++ b/vendor/genfs_contexts @@ -83,16 +83,6 @@ genfscon sysfs /devices/platform/13120000.pcie/power_stats u:objec genfscon sysfs /devices/platform/cpif/modem/power_stats u:object_r:sysfs_power_stats:s0 # Battery -genfscon sysfs /devices/platform/10c90000.hsi2c/i2c-0/0-003c u:object_r:sysfs_wlc:s0 -genfscon sysfs /devices/platform/10c90000.hsi2c/i2c-1/1-003c u:object_r:sysfs_wlc:s0 -genfscon sysfs /devices/platform/10c90000.hsi2c/i2c-2/2-003c u:object_r:sysfs_wlc:s0 -genfscon sysfs /devices/platform/10c90000.hsi2c/i2c-3/3-003c u:object_r:sysfs_wlc:s0 -genfscon sysfs /devices/platform/10c90000.hsi2c/i2c-4/4-003c u:object_r:sysfs_wlc:s0 -genfscon sysfs /devices/platform/10c90000.hsi2c/i2c-5/5-003c u:object_r:sysfs_wlc:s0 -genfscon sysfs /devices/platform/10c90000.hsi2c/i2c-6/6-003c u:object_r:sysfs_wlc:s0 -genfscon sysfs /devices/platform/10c90000.hsi2c/i2c-7/7-003c u:object_r:sysfs_wlc:s0 -genfscon sysfs /devices/platform/10c90000.hsi2c/i2c-8/8-003c u:object_r:sysfs_wlc:s0 -genfscon sysfs /devices/platform/10c90000.hsi2c/i2c-9/9-003c u:object_r:sysfs_wlc:s0 genfscon sysfs /devices/platform/google,battery/power_supply/battery u:object_r:sysfs_batteryinfo:s0 genfscon sysfs /devices/platform/google,cpm u:object_r:sysfs_batteryinfo:s0 genfscon sysfs /devices/platform/google,charger u:object_r:sysfs_batteryinfo:s0 diff --git a/vendor/hal_health_default.te b/vendor/hal_health_default.te index 651f0295..a68ddc24 100644 --- a/vendor/hal_health_default.te +++ b/vendor/hal_health_default.te @@ -11,5 +11,4 @@ allow hal_health_default fwk_stats_service:service_manager find; allow hal_health_default sysfs_scsi_devices_0000:dir r_dir_perms; allow hal_health_default sysfs_scsi_devices_0000:file rw_file_perms; -allow hal_health_default sysfs_wlc:dir search; allow hal_health_default sysfs_batteryinfo:file w_file_perms; diff --git a/vendor/hal_wireless_charger.te b/vendor/hal_wireless_charger.te new file mode 100644 index 00000000..04b3e5e2 --- /dev/null +++ b/vendor/hal_wireless_charger.te @@ -0,0 +1,2 @@ +type hal_wireless_charger, domain; +type hal_wireless_charger_exec, exec_type, vendor_file_type, file_type; diff --git a/vendor/platform_app.te b/vendor/platform_app.te new file mode 100644 index 00000000..f0586f30 --- /dev/null +++ b/vendor/platform_app.te @@ -0,0 +1,3 @@ +# WLC +allow platform_app hal_wireless_charger_service:service_manager find; +binder_call(platform_app, hal_wireless_charger) diff --git a/vendor/service.te b/vendor/service.te index 0c4726f3..55f8f9f3 100644 --- a/vendor/service.te +++ b/vendor/service.te @@ -1 +1,4 @@ type hal_pixel_display_service, service_manager_type, hal_service_type; + +# WLC +type hal_wireless_charger_service, hal_service_type, protected_service, service_manager_type; diff --git a/vendor/service_contexts b/vendor/service_contexts index 9592f86f..ec09f30b 100644 --- a/vendor/service_contexts +++ b/vendor/service_contexts @@ -1 +1,3 @@ com.google.hardware.pixel.display.IDisplay/default u:object_r:hal_pixel_display_service:s0 + +vendor.google.wireless_charger.IWirelessCharger/default u:object_r:hal_wireless_charger_service:s0 diff --git a/vendor/system_app.te b/vendor/system_app.te new file mode 100644 index 00000000..4677e980 --- /dev/null +++ b/vendor/system_app.te @@ -0,0 +1,3 @@ +# WLC +allow system_app hal_wireless_charger_service:service_manager find; +binder_call(system_app, hal_wireless_charger)