From 14b2c135bb8ee236bd7793827c65dac87b8942e0 Mon Sep 17 00:00:00 2001 From: Hasan Awais Date: Wed, 3 May 2023 00:11:47 +0000 Subject: [PATCH] uwb: add permissions for factory uwb calib file needed for copying the factory calib file from persist to /data/vendor/uwb, along with converting the file to a valid format for uwb HAL Bug: 274513871 Bug: 279820265 Test: local build passed Change-Id: I4c4286cd5c200475cac3b9d58a81724d631c49e0 Signed-off-by: Hasan Awais --- legacy/whitechapel_pro/file.te | 3 --- legacy/whitechapel_pro/file_contexts | 2 -- vendor/file.te | 3 +++ vendor/file_contexts | 4 +++- vendor/hal_uwb_vendor_default.te | 2 ++ vendor/vendor_uwb_init.te | 3 +++ 6 files changed, 11 insertions(+), 6 deletions(-) diff --git a/legacy/whitechapel_pro/file.te b/legacy/whitechapel_pro/file.te index 23d748bf..f59a80b1 100644 --- a/legacy/whitechapel_pro/file.te +++ b/legacy/whitechapel_pro/file.te @@ -2,8 +2,6 @@ type updated_wifi_firmware_data_file, file_type, data_file_type; type vendor_misc_data_file, file_type, data_file_type; type per_boot_file, file_type, data_file_type, core_data_file_type; -type uwb_vendor_data_file, file_type, data_file_type, app_data_file_type; -type uwb_data_vendor, file_type, data_file_type; type powerstats_vendor_data_file, file_type, data_file_type; type sensor_debug_data_file, file_type, data_file_type; @@ -19,7 +17,6 @@ type vendor_regmap_debugfs, fs_type, debugfs_type; # persist type persist_ss_file, file_type, vendor_persist_type; -type persist_uwb_file, file_type, vendor_persist_type; # Storage Health HAL type proc_f2fs, proc_type, fs_type; diff --git a/legacy/whitechapel_pro/file_contexts b/legacy/whitechapel_pro/file_contexts index f0570fd1..3ee41cda 100644 --- a/legacy/whitechapel_pro/file_contexts +++ b/legacy/whitechapel_pro/file_contexts @@ -41,10 +41,8 @@ /data/vendor/misc(/.*)? u:object_r:vendor_misc_data_file:s0 /data/per_boot(/.*)? u:object_r:per_boot_file:s0 /data/vendor/sensors/registry(/.*)? u:object_r:sensor_reg_data_file:s0 -/data/vendor/uwb(/.*)? u:object_r:uwb_data_vendor:s0 /dev/battery_history u:object_r:battery_history_device:s0 /data/vendor/powerstats(/.*)? u:object_r:powerstats_vendor_data_file:s0 # Persist /mnt/vendor/persist/sensors/registry(/.*)? u:object_r:persist_sensor_reg_file:s0 -/mnt/vendor/persist/uwb(/.*)? u:object_r:persist_uwb_file:s0 diff --git a/vendor/file.te b/vendor/file.te index 6ebe800d..c084bd3a 100644 --- a/vendor/file.te +++ b/vendor/file.te @@ -3,6 +3,7 @@ type persist_display_file, file_type, vendor_persist_type; type persist_battery_file, file_type, vendor_persist_type; type persist_camera_file, file_type, vendor_persist_type; type persist_sensor_reg_file, file_type, vendor_persist_type; +type persist_uwb_file, file_type, vendor_persist_type; #sysfs type sysfs_power_dump, sysfs_type, fs_type; @@ -35,6 +36,8 @@ type vendor_bt_data_file, file_type, data_file_type; # Data type sensor_reg_data_file, file_type, data_file_type; +type uwb_vendor_data_file, file_type, data_file_type, app_data_file_type; +type uwb_data_vendor, file_type, data_file_type; # Vendor sched files userdebug_or_eng(` diff --git a/vendor/file_contexts b/vendor/file_contexts index 14b49d0f..902f42e6 100644 --- a/vendor/file_contexts +++ b/vendor/file_contexts @@ -23,7 +23,7 @@ /vendor/bin/trusty_apploader u:object_r:trusty_apploader_exec:s0 /vendor/bin/trusty_metricsd u:object_r:trusty_metricsd_exec:s0 /vendor/bin/chre u:object_r:chre_exec:s0 -/vendor/bin/init\.uwb\.calib\.sh u:object_r:vendor_uwb_init_exec:s0 +/vendor/bin/init_uwb_calib u:object_r:vendor_uwb_init_exec:s0 /vendor/bin/hw/android\.hardware\.security\.keymint-service\.trusty u:object_r:hal_keymint_default_exec:s0 /vendor/bin/hw/android\.hardware\.security\.keymint-service\.rust\.trusty u:object_r:hal_keymint_default_exec:s0 /vendor/bin/ufs_firmware_update\.sh u:object_r:ufs_firmware_update_exec:s0 @@ -38,12 +38,14 @@ # Vendor /data/vendor/bluetooth(/.*)? u:object_r:vendor_bt_data_file:s0 +/data/vendor/uwb(/.*)? u:object_r:uwb_data_vendor:s0 # persist /mnt/vendor/persist/camera(/.*)? u:object_r:persist_camera_file:s0 /mnt/vendor/persist/display(/.*)? u:object_r:persist_display_file:s0 /mnt/vendor/persist/battery(/.*)? u:object_r:persist_battery_file:s0 /mnt/vendor/persist/ss(/.*)? u:object_r:persist_ss_file:s0 +/mnt/vendor/persist/uwb(/.*)? u:object_r:persist_uwb_file:s0 # Devices /dev/bbd_pwrstat u:object_r:power_stats_device:s0 diff --git a/vendor/hal_uwb_vendor_default.te b/vendor/hal_uwb_vendor_default.te index 06a67d0d..3a2fd50e 100644 --- a/vendor/hal_uwb_vendor_default.te +++ b/vendor/hal_uwb_vendor_default.te @@ -3,3 +3,5 @@ type hal_uwb_vendor_default_exec, vendor_file_type, exec_type, file_type; allow hal_uwb_default uci_device:chr_file rw_file_perms; init_daemon_domain(hal_uwb_vendor_default) +allow hal_uwb_default uwb_data_vendor:dir create_dir_perms; +allow hal_uwb_default uwb_data_vendor:file create_file_perms; diff --git a/vendor/vendor_uwb_init.te b/vendor/vendor_uwb_init.te index 52160194..90082381 100644 --- a/vendor/vendor_uwb_init.te +++ b/vendor/vendor_uwb_init.te @@ -2,3 +2,6 @@ type vendor_uwb_init, domain; type vendor_uwb_init_exec, exec_type, vendor_file_type, file_type; init_daemon_domain(vendor_uwb_init) + +allow vendor_uwb_init uwb_data_vendor:file create_file_perms; +allow vendor_uwb_init uwb_data_vendor:dir w_dir_perms;