From 4f1d96210d0a090d4f2bde23cee1ccfe011478bf Mon Sep 17 00:00:00 2001 From: JimiChen Date: Fri, 27 Oct 2023 19:45:33 +0800 Subject: [PATCH] Update SELinux policies for rlsservice 1. Move rls_service context from vndservice_contexts to service_contexts. 2. Allow binder calls from rlsservice to servicemanager 3. Change rls_service type from vndservice_manager_type to service_manager_type. Bug: 301520085 Test: GCA Change-Id: Ief845b5691487f48d570c531de1ea99945087e42 --- whitechapel_pro/rlsservice.te | 2 ++ whitechapel_pro/service.te | 2 ++ whitechapel_pro/service_contexts | 2 ++ whitechapel_pro/vndservice.te | 1 - whitechapel_pro/vndservice_contexts | 1 - 5 files changed, 6 insertions(+), 2 deletions(-) diff --git a/whitechapel_pro/rlsservice.te b/whitechapel_pro/rlsservice.te index e5f1acef..967389a1 100644 --- a/whitechapel_pro/rlsservice.te +++ b/whitechapel_pro/rlsservice.te @@ -16,6 +16,8 @@ allow rlsservice mnt_vendor_file:dir search; allow rlsservice rls_device:chr_file rw_file_perms; binder_call(rlsservice, hal_camera_default) +binder_call(rlsservice, servicemanager) + # Allow access to display backlight information allow rlsservice sysfs_leds:dir search; diff --git a/whitechapel_pro/service.te b/whitechapel_pro/service.te index 1c49d4f8..2fff6689 100644 --- a/whitechapel_pro/service.te +++ b/whitechapel_pro/service.te @@ -3,3 +3,5 @@ type hal_uwb_vendor_service, service_manager_type, hal_service_type; # WLC type hal_wireless_charger_service, hal_service_type, protected_service, service_manager_type; + +type rls_service, service_manager_type; diff --git a/whitechapel_pro/service_contexts b/whitechapel_pro/service_contexts index a3849bb7..e3ae0e74 100644 --- a/whitechapel_pro/service_contexts +++ b/whitechapel_pro/service_contexts @@ -2,3 +2,5 @@ com.google.hardware.pixel.display.IDisplay/default u:object_r:hal_pixel_ hardware.qorvo.uwb.IUwbVendor/default u:object_r:hal_uwb_vendor_service:s0 vendor.google.wireless_charger.IWirelessCharger/default u:object_r:hal_wireless_charger_service:s0 + +rlsservice u:object_r:rls_service:s0 diff --git a/whitechapel_pro/vndservice.te b/whitechapel_pro/vndservice.te index bd59e836..06ef0b2d 100644 --- a/whitechapel_pro/vndservice.te +++ b/whitechapel_pro/vndservice.te @@ -1,3 +1,2 @@ -type rls_service, vndservice_manager_type; type vendor_surfaceflinger_vndservice, vndservice_manager_type; type eco_service, vndservice_manager_type; diff --git a/whitechapel_pro/vndservice_contexts b/whitechapel_pro/vndservice_contexts index 16ae43a4..6ddcabfe 100644 --- a/whitechapel_pro/vndservice_contexts +++ b/whitechapel_pro/vndservice_contexts @@ -1,3 +1,2 @@ -rlsservice u:object_r:rls_service:s0 Exynos.HWCService u:object_r:vendor_surfaceflinger_vndservice:s0 media.ecoservice u:object_r:eco_service:s0