From ac8c6e3d44ec55474759d99e58c9dbf034f4f815 Mon Sep 17 00:00:00 2001
From: Jaekyun Seok <jaekyun@google.com>
Date: Tue, 27 Mar 2018 13:41:47 +0900
Subject: [PATCH] Allow vendor-init-settable to persist.radio.multisim.config

A default value of persist.radio.multisim.config can be set by SoC
vendors, and so vendor-init-settable should be allowed to it.

Bug: 73871799
Test: succeeded building and tested with taimen
Change-Id: Ie62b91e7e3d7e05425b742838417f1cab7b3fed4
---
 private/compat/26.0/26.0.ignore.cil | 1 +
 private/compat/27.0/27.0.ignore.cil | 1 +
 public/domain.te                    | 3 +++
 public/hal_telephony.te             | 1 +
 public/property.te                  | 2 ++
 public/property_contexts            | 2 +-
 public/radio.te                     | 1 +
 public/vendor_init.te               | 1 +
 8 files changed, 11 insertions(+), 1 deletion(-)

diff --git a/private/compat/26.0/26.0.ignore.cil b/private/compat/26.0/26.0.ignore.cil
index 080485147..403fde752 100644
--- a/private/compat/26.0/26.0.ignore.cil
+++ b/private/compat/26.0/26.0.ignore.cil
@@ -37,6 +37,7 @@
     exported2_system_prop
     exported2_vold_prop
     exported3_default_prop
+    exported3_radio_prop
     exported3_system_prop
     fs_bpf
     hal_authsecret_hwservice
diff --git a/private/compat/27.0/27.0.ignore.cil b/private/compat/27.0/27.0.ignore.cil
index 297c5ee0b..09ffe56ae 100644
--- a/private/compat/27.0/27.0.ignore.cil
+++ b/private/compat/27.0/27.0.ignore.cil
@@ -20,6 +20,7 @@
     exported2_system_prop
     exported2_vold_prop
     exported3_default_prop
+    exported3_radio_prop
     exported3_system_prop
     exported_config_prop
     exported_dalvik_prop
diff --git a/public/domain.te b/public/domain.te
index f602d0884..ed567ae89 100644
--- a/public/domain.te
+++ b/public/domain.te
@@ -95,6 +95,7 @@ not_compatible_property(`
     get_prop(domain, exported2_system_prop)
     get_prop(domain, exported2_vold_prop)
     get_prop(domain, exported3_default_prop)
+    get_prop(domain, exported3_radio_prop)
     get_prop(domain, exported3_system_prop)
     get_prop(domain, vendor_default_prop)
 ')
@@ -108,6 +109,7 @@ compatible_property_only(`
     get_prop({coredomain appdomain shell}, exported2_system_prop)
     get_prop({coredomain appdomain shell}, exported2_vold_prop)
     get_prop({coredomain appdomain shell}, exported3_default_prop)
+    get_prop({coredomain appdomain shell}, exported3_radio_prop)
     get_prop({coredomain appdomain shell}, exported3_system_prop)
     userdebug_or_eng(`
         get_prop(su, core_property_type)
@@ -119,6 +121,7 @@ compatible_property_only(`
         get_prop(su, exported2_system_prop)
         get_prop(su, exported2_vold_prop)
         get_prop(su, exported3_default_prop)
+        get_prop(su, exported3_radio_prop)
         get_prop(su, exported3_system_prop)
     ')
     get_prop({domain -coredomain -appdomain}, vendor_default_prop)
diff --git a/public/hal_telephony.te b/public/hal_telephony.te
index 86f41cbea..31859aa51 100644
--- a/public/hal_telephony.te
+++ b/public/hal_telephony.te
@@ -27,6 +27,7 @@ allow hal_telephony_server sdcard_type:dir r_dir_perms;
 set_prop(hal_telephony_server, radio_prop)
 set_prop(hal_telephony_server, exported_radio_prop)
 set_prop(hal_telephony_server, exported2_radio_prop)
+set_prop(hal_telephony_server, exported3_radio_prop)
 
 allow hal_telephony_server tty_device:chr_file rw_file_perms;
 
diff --git a/public/property.te b/public/property.te
index a099e87b6..64f309d5d 100644
--- a/public/property.te
+++ b/public/property.te
@@ -73,6 +73,7 @@ type exported2_radio_prop, property_type;
 type exported2_system_prop, property_type;
 type exported2_vold_prop, property_type;
 type exported3_default_prop, property_type;
+type exported3_radio_prop, property_type;
 type exported3_system_prop, property_type;
 type vendor_default_prop, property_type;
 
@@ -164,6 +165,7 @@ compatible_property_only(`
   } {
     exported_radio_prop
     exported2_radio_prop
+    exported3_radio_prop
     radio_prop
   }:property_service set;
 
diff --git a/public/property_contexts b/public/property_contexts
index 5dcffb334..17a0a33fb 100644
--- a/public/property_contexts
+++ b/public/property_contexts
@@ -1,6 +1,5 @@
 # vendor-init-readable
 persist.radio.airplane_mode_on u:object_r:exported2_radio_prop:s0 exact int
-persist.radio.multisim.config u:object_r:exported2_radio_prop:s0 exact string
 
 # vendor-init-settable
 af.fast_track_multiplier u:object_r:exported3_default_prop:s0 exact int
@@ -67,6 +66,7 @@ persist.config.calibration_fac u:object_r:exported3_default_prop:s0 exact string
 persist.dbg.volte_avail_ovr u:object_r:exported3_default_prop:s0 exact int
 persist.dbg.vt_avail_ovr u:object_r:exported3_default_prop:s0 exact int
 persist.dbg.wfc_avail_ovr u:object_r:exported3_default_prop:s0 exact int
+persist.radio.multisim.config u:object_r:exported3_radio_prop:s0 exact string
 persist.sys.dalvik.vm.lib.2 u:object_r:exported2_system_prop:s0 exact string
 persist.sys.sf.color_saturation u:object_r:exported2_system_prop:s0 exact string
 pm.dexopt.ab-ota u:object_r:exported_pm_prop:s0 exact string
diff --git a/public/radio.te b/public/radio.te
index 4998a61cd..8fb5ad638 100644
--- a/public/radio.te
+++ b/public/radio.te
@@ -21,6 +21,7 @@ allow radio net_data_file:file r_file_perms;
 set_prop(radio, radio_prop)
 set_prop(radio, exported_radio_prop)
 set_prop(radio, exported2_radio_prop)
+set_prop(radio, exported3_radio_prop)
 set_prop(radio, net_radio_prop)
 
 # ctl interface
diff --git a/public/vendor_init.te b/public/vendor_init.te
index dd7479fcb..6a13f6913 100644
--- a/public/vendor_init.te
+++ b/public/vendor_init.te
@@ -172,6 +172,7 @@ set_prop(vendor_init, exported2_config_prop)
 set_prop(vendor_init, exported2_system_prop)
 set_prop(vendor_init, exported2_vold_prop)
 set_prop(vendor_init, exported3_default_prop)
+set_prop(vendor_init, exported3_radio_prop)
 set_prop(vendor_init, logd_prop)
 set_prop(vendor_init, log_tag_prop)
 set_prop(vendor_init, log_prop)
-- 
GitLab