aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorHua Liu <richardl@codeaurora.org>2018-04-13 19:19:09 -0700
committerDavide Garberi <dade.garberi@gmail.com>2018-09-25 15:22:22 +0200
commit559edba098ee1b8c6b29bdb755f5d04fa6cbb8c9 (patch)
treea4276566b29d338ffbfdfc76ebe235950c22fcbe
parenta5ed486161017fcdeff61ba41a5b629555081dd1 (diff)
msm8996-common: Fix MBN copy issue
DAC_OVERRIDE is disabled for all the vendor init scripts in Android P. This change will grant "group root" the write permission temporarily for deleting/copying operations. System user could not access the MBN files in data partition no longer. Only radio user and root group have read permission after boot up. Change-Id: I9f184da2253dc5896b145c0e52fc3b42da15d9f7
-rw-r--r--rootdir/etc/init.qcom.rc2
-rwxr-xr-xrootdir/etc/init.qcom.sh6
2 files changed, 6 insertions, 2 deletions
diff --git a/rootdir/etc/init.qcom.rc b/rootdir/etc/init.qcom.rc
index fc3c2ce..7f4e526 100644
--- a/rootdir/etc/init.qcom.rc
+++ b/rootdir/etc/init.qcom.rc
@@ -133,7 +133,7 @@ on post-fs-data
mkdir /data/vendor/radio 0770 system radio
# Create directory for modem_config
- mkdir /data/vendor/modem_config 0550 system radio
+ mkdir /data/vendor/modem_config 0570 radio root
# Create directories for Location services
mkdir /data/vendor/location 0770 gps gps
diff --git a/rootdir/etc/init.qcom.sh b/rootdir/etc/init.qcom.sh
index 7010409..c0509b4 100755
--- a/rootdir/etc/init.qcom.sh
+++ b/rootdir/etc/init.qcom.sh
@@ -53,13 +53,17 @@ fi
cur_version_info=`cat /firmware/verinfo/ver_info.txt`
if [ ! -f /firmware/verinfo/ver_info.txt -o "$prev_version_info" != "$cur_version_info" ]; then
+ # add W for group recursively before delete
+ chmod g+w -R /data/vendor/modem_config/*
rm -rf /data/vendor/modem_config/*
# preserve the read only mode for all subdir and files
cp --preserve=m -dr /firmware/image/modem_pr/mcfg/fancy_co/* /data/vendor/radio/modem_config
cp --preserve=m -d /firmware/verinfo/ver_info.txt /data/vendor/modem_config/
cp --preserve=m -d /firmware/image/modem_pr/mbn_ota.txt /data/vendor/modem_config/
- chown -hR radio.radio /data/vendor/modem_config/*
+ # the group must be root, otherwise this script could not add "W" for group recursively
+ chown -hR radio.root /data/vendor/modem_config/*
fi
+chmod g-w /data/vendor/modem_config
setprop ro.runtime.mbn_copy_completed 1
MemTotalStr=`cat /proc/meminfo | grep MemTotal`