summaryrefslogtreecommitdiff
path: root/scripts/image_signing/sign_android_image.sh
diff options
context:
space:
mode:
Diffstat (limited to 'scripts/image_signing/sign_android_image.sh')
-rwxr-xr-xscripts/image_signing/sign_android_image.sh10
1 files changed, 9 insertions, 1 deletions
diff --git a/scripts/image_signing/sign_android_image.sh b/scripts/image_signing/sign_android_image.sh
index 92e4b65d..bf5098d0 100755
--- a/scripts/image_signing/sign_android_image.sh
+++ b/scripts/image_signing/sign_android_image.sh
@@ -136,8 +136,16 @@ update_sepolicy() {
die "Unable to get the public platform key"
fi
+ shopt -s nullglob
+ local xml_list=( "${system_mnt}"/system/etc/**/*mac_permissions.xml )
+ shopt -u nullglob
+ if [[ "${#xml_list[@]}" -ne 1 ]]; then
+ die "Unexpected number of *mac_permissions.xml: ${#xml_list[@]}\n \
+ ${xml_list[*]}"
+ fi
+
+ local xml="${xml_list[0]}"
local orig=$(make_temp_file)
- local xml="${system_mnt}/system/etc/security/mac_permissions.xml"
local pattern='(<signer signature=")\w+("><seinfo value="platform)'
cp "${xml}" "${orig}"
sudo sed -i -E "s/${pattern}/\1${new_cert}"'\2/g' "${xml}"