From 8a5370c5e4d2c8d7ceb67c3910128788a4e95643 Mon Sep 17 00:00:00 2001 From: Roshan Pius Date: Mon, 23 Aug 2021 09:29:00 -0700 Subject: [PATCH] sepolicy: Add UWB HAL interface in AOSP Adding sepolicy rules for the AOSP HAL interface. Ignore-AOSP-First: Dependent changes in internal-only projects. Bug: 195308730 Test: Compiles Change-Id: I56302b570a749f7d72b6fe8f4f4a8767ea4785c1 Merged-In: I56302b570a749f7d72b6fe8f4f4a8767ea4785c1 --- private/compat/31.0/31.0.ignore.cil | 1 + private/hwservice_contexts | 1 + private/system_server.te | 1 + public/hal_uwb.te | 6 ++++++ public/hwservice.te | 1 + vendor/file_contexts | 1 + vendor/hal_uwb_default.te | 5 +++++ 7 files changed, 16 insertions(+) create mode 100644 public/hal_uwb.te create mode 100644 vendor/hal_uwb_default.te diff --git a/private/compat/31.0/31.0.ignore.cil b/private/compat/31.0/31.0.ignore.cil index 6c89cb0ee..808278ad5 100644 --- a/private/compat/31.0/31.0.ignore.cil +++ b/private/compat/31.0/31.0.ignore.cil @@ -12,6 +12,7 @@ hal_contexthub_service hal_system_suspend_service hal_tv_tuner_service + hal_uwb_hwservice hal_uwb_vendor_service hal_wifi_hostapd_service power_stats_service diff --git a/private/hwservice_contexts b/private/hwservice_contexts index 4a44dc58b..8572f75fe 100644 --- a/private/hwservice_contexts +++ b/private/hwservice_contexts @@ -69,6 +69,7 @@ android.hardware.tv.input::ITvInput u:object_r:hal_t android.hardware.tv.tuner::ITuner u:object_r:hal_tv_tuner_hwservice:s0 android.hardware.usb::IUsb u:object_r:hal_usb_hwservice:s0 android.hardware.usb.gadget::IUsbGadget u:object_r:hal_usb_gadget_hwservice:s0 +android.hardware.uwb::IUwb u:object_r:hal_uwb_hwservice:s0 android.hardware.vibrator::IVibrator u:object_r:hal_vibrator_hwservice:s0 android.hardware.vr::IVr u:object_r:hal_vr_hwservice:s0 android.hardware.weaver::IWeaver u:object_r:hal_weaver_hwservice:s0 diff --git a/private/system_server.te b/private/system_server.te index e899556db..5650a7a92 100644 --- a/private/system_server.te +++ b/private/system_server.te @@ -304,6 +304,7 @@ hal_client_domain(system_server, hal_tv_cec) hal_client_domain(system_server, hal_tv_input) hal_client_domain(system_server, hal_usb) hal_client_domain(system_server, hal_usb_gadget) +hal_client_domain(system_server, hal_uwb) hal_client_domain(system_server, hal_vibrator) hal_client_domain(system_server, hal_vr) hal_client_domain(system_server, hal_weaver) diff --git a/public/hal_uwb.te b/public/hal_uwb.te new file mode 100644 index 000000000..672bcf24a --- /dev/null +++ b/public/hal_uwb.te @@ -0,0 +1,6 @@ +# HwBinder IPC from client to server, and callbacks +binder_call(hal_uwb_client, hal_uwb_server) +binder_call(hal_uwb_server, hal_uwb_client) + +hal_attribute_hwservice(hal_uwb, hal_uwb_hwservice) + diff --git a/public/hwservice.te b/public/hwservice.te index 11b77f08b..36fea7936 100644 --- a/public/hwservice.te +++ b/public/hwservice.te @@ -48,6 +48,7 @@ type hal_tv_input_hwservice, hwservice_manager_type, protected_hwservice; type hal_tv_tuner_hwservice, hwservice_manager_type, protected_hwservice; type hal_usb_gadget_hwservice, hwservice_manager_type, protected_hwservice; type hal_usb_hwservice, hwservice_manager_type, protected_hwservice; +type hal_uwb_hwservice, hwservice_manager_type, protected_hwservice; type hal_vehicle_hwservice, hwservice_manager_type, protected_hwservice; type hal_vibrator_hwservice, hwservice_manager_type, protected_hwservice; type hal_vr_hwservice, hwservice_manager_type, protected_hwservice; diff --git a/vendor/file_contexts b/vendor/file_contexts index b75e61b14..7c576186d 100644 --- a/vendor/file_contexts +++ b/vendor/file_contexts @@ -80,6 +80,7 @@ /(vendor|system/vendor)/bin/hw/android\.hardware\.tv\.tuner-service\.example u:object_r:hal_tv_tuner_default_exec:s0 /(vendor|system/vendor)/bin/hw/android\.hardware\.usb@1\.0-service u:object_r:hal_usb_default_exec:s0 /(vendor|system/vendor)/bin/hw/android\.hardware\.usb\.gadget@1\.1-service u:object_r:hal_usb_gadget_default_exec:s0 +/(vendor|system/vendor)/bin/hw/android\.hardware\.uwb-service u:object_r:hal_uwb_default_exec:s0 /(vendor|system/vendor)/bin/hw/android\.hardware\.vibrator@1\.0-service u:object_r:hal_vibrator_default_exec:s0 /(vendor|system/vendor)/bin/hw/android\.hardware\.vibrator-service.example u:object_r:hal_vibrator_default_exec:s0 /(vendor|system/vendor)/bin/hw/android\.hardware\.vr@1\.0-service u:object_r:hal_vr_default_exec:s0 diff --git a/vendor/hal_uwb_default.te b/vendor/hal_uwb_default.te new file mode 100644 index 000000000..cac8c4498 --- /dev/null +++ b/vendor/hal_uwb_default.te @@ -0,0 +1,5 @@ +type hal_uwb_default, domain; +hal_server_domain(hal_uwb_default, hal_uwb) + +type hal_uwb_default_exec, exec_type, vendor_file_type, file_type; +init_daemon_domain(hal_uwb_default)