Rename exported3_radio_prop to radio_control_prop

The context name exported3_radio_prop is ambiguous and does not reflect
the usage and role of the properties. This changes its name to
radio_control_prop.

Some downstream branches are still using exported3_radio_prop, so
get_prop(domain, radio_control_prop) is added to avoid regression. It's
just a workaround and to be removed soon, after all exported3_radio_prop
are cleaned up.

Bug: 162214733
Test: boot a device with a sim and see basic functions work
Change-Id: If5fe3be7c64b36435c4ad0dc9a8089077295d502
Merged-In: If5fe3be7c64b36435c4ad0dc9a8089077295d502
diff --git a/private/compat/27.0/27.0.ignore.cil b/private/compat/27.0/27.0.ignore.cil
index f4c2ae1..a566eaa 100644
--- a/private/compat/27.0/27.0.ignore.cil
+++ b/private/compat/27.0/27.0.ignore.cil
@@ -152,6 +152,7 @@
     property_info
     property_service_version_prop
     provisioned_prop
+    radio_control_prop
     recovery_config_prop
     recovery_socket
     retaildemo_prop
diff --git a/private/compat/30.0/30.0.cil b/private/compat/30.0/30.0.cil
index 7aea10f..d92d74c 100644
--- a/private/compat/30.0/30.0.cil
+++ b/private/compat/30.0/30.0.cil
@@ -1383,7 +1383,7 @@
     vts_status_prop
     wifi_config_prop
     zram_config_prop))
-(typeattributeset exported3_radio_prop_30_0 (exported3_radio_prop))
+(typeattributeset exported3_radio_prop_30_0 (exported3_radio_prop radio_control_prop))
 (typeattributeset exported3_system_prop_30_0
   ( exported3_system_prop
     boot_status_prop
diff --git a/private/domain.te b/private/domain.te
index 6cee382..7735ad7 100644
--- a/private/domain.te
+++ b/private/domain.te
@@ -75,7 +75,6 @@
     # DO NOT ADD ANY PROPERTIES HERE
     get_prop(domain, core_property_type)
     get_prop(domain, exported2_system_prop)
-    get_prop(domain, exported3_radio_prop)
     get_prop(domain, exported3_system_prop)
     get_prop(domain, vendor_default_prop)
 ')
@@ -83,7 +82,6 @@
     # DO NOT ADD ANY PROPERTIES HERE
     get_prop({coredomain appdomain shell}, core_property_type)
     get_prop({coredomain appdomain shell}, exported2_system_prop)
-    get_prop({coredomain appdomain shell}, exported3_radio_prop)
     get_prop({coredomain appdomain shell}, exported3_system_prop)
     get_prop({coredomain appdomain shell}, exported_camera_prop)
     get_prop({coredomain shell}, userspace_reboot_exported_prop)
diff --git a/private/property.te b/private/property.te
index cabd06b..a068799 100644
--- a/private/property.te
+++ b/private/property.te
@@ -164,7 +164,7 @@
     -hal_telephony_server
     -vendor_init
   } {
-    exported3_radio_prop
+    radio_control_prop
   }:property_service set;
 
   neverallow {
diff --git a/private/property_contexts b/private/property_contexts
index 31ef801..9cf28a1 100644
--- a/private/property_contexts
+++ b/private/property_contexts
@@ -362,7 +362,7 @@
 persist.bluetooth.bluetooth_audio_hal.disabled u:object_r:bluetooth_audio_hal_prop:s0 exact bool
 persist.bluetooth.btsnoopenable                u:object_r:exported_bluetooth_prop:s0 exact bool
 
-persist.radio.multisim.config u:object_r:exported3_radio_prop:s0 exact string
+persist.radio.multisim.config u:object_r:radio_control_prop:s0 exact string
 
 persist.sys.hdmi.keep_awake              u:object_r:hdmi_config_prop:s0 exact bool
 ro.hdmi.cec_device_types                 u:object_r:hdmi_config_prop:s0 exact string
diff --git a/public/domain.te b/public/domain.te
index f23e832..3f6b793 100644
--- a/public/domain.te
+++ b/public/domain.te
@@ -339,6 +339,10 @@
 allow domain apex_mnt_dir:dir { getattr search };
 allow domain apex_mnt_dir:lnk_file r_file_perms;
 
+# Allow to read persist.radio.multisim.config
+# TODO(b/162214733): remove this after cleaning up exported3_radio_prop
+get_prop(domain, radio_control_prop)
+
 ###
 ### neverallow rules
 ###
diff --git a/public/hal_telephony.te b/public/hal_telephony.te
index 7966271..4cb0c5a 100644
--- a/public/hal_telephony.te
+++ b/public/hal_telephony.te
@@ -21,8 +21,8 @@
 
 # property service
 get_prop(hal_telephony_server, telephony_config_prop)
+set_prop(hal_telephony_server, radio_control_prop)
 set_prop(hal_telephony_server, radio_prop)
-set_prop(hal_telephony_server, exported3_radio_prop)
 set_prop(hal_telephony_server, telephony_status_prop)
 
 allow hal_telephony_server tty_device:chr_file rw_file_perms;
diff --git a/public/property.te b/public/property.te
index 7b28745..843bd62 100644
--- a/public/property.te
+++ b/public/property.te
@@ -182,6 +182,7 @@
 system_public_prop(nfc_prop)
 system_public_prop(ota_prop)
 system_public_prop(powerctl_prop)
+system_public_prop(radio_control_prop)
 system_public_prop(radio_prop)
 system_public_prop(serialno_prop)
 system_public_prop(surfaceflinger_color_prop)
diff --git a/public/vendor_init.te b/public/vendor_init.te
index df50b17..c0f81ef 100644
--- a/public/vendor_init.te
+++ b/public/vendor_init.te
@@ -220,13 +220,13 @@
 set_prop(vendor_init, exported_overlay_prop)
 set_prop(vendor_init, exported_pm_prop)
 set_prop(vendor_init, exported2_system_prop)
-set_prop(vendor_init, exported3_radio_prop)
 set_prop(vendor_init, ffs_control_prop)
 set_prop(vendor_init, incremental_prop)
 set_prop(vendor_init, lmkd_prop)
 set_prop(vendor_init, logd_prop)
 set_prop(vendor_init, log_tag_prop)
 set_prop(vendor_init, log_prop)
+set_prop(vendor_init, radio_control_prop)
 set_prop(vendor_init, rebootescrow_hal_prop)
 set_prop(vendor_init, serialno_prop)
 set_prop(vendor_init, surfaceflinger_color_prop)