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
diff --git a/private/compat/31.0/31.0.ignore.cil b/private/compat/31.0/31.0.ignore.cil
index 6c89cb0..808278a 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 4a44dc5..8572f75 100644
--- a/private/hwservice_contexts
+++ b/private/hwservice_contexts
@@ -69,6 +69,7 @@
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 e899556..5650a7a 100644
--- a/private/system_server.te
+++ b/private/system_server.te
@@ -304,6 +304,7 @@
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 0000000..672bcf2
--- /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 11b77f0..36fea79 100644
--- a/public/hwservice.te
+++ b/public/hwservice.te
@@ -48,6 +48,7 @@
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 b75e61b..7c57618 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 0000000..cac8c44
--- /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)