AndroidRuntime: pass odsign verification status to ART

ART will refuse to load on-device generated artifacts if odsign
verification status suggests files have been tampered with.

(cherry picked from commit a8b24392a1)

Bug: 180949581
Test: manual
Merged-In: I772b5b7b191310bf7c7797161a304a1ab6f53c5e
Change-Id: Ia0e5ebf4c763678fef55139af60b169f0e6fdeee
This commit is contained in:
Orion Hodson
2021-07-01 12:14:47 +01:00
parent de8ea692b1
commit 30202b7abb

View File

@@ -752,6 +752,11 @@ int AndroidRuntime::startVm(JavaVM** pJavaVM, JNIEnv** pEnv, bool zygote, bool p
//addOption("-verbose:jni");
}
const bool odsignVerificationSuccess = GetBoolProperty("odsign.verification.success", false);
if (!odsignVerificationSuccess) {
addOption("-Xdeny-art-apex-data-files");
}
property_get("dalvik.vm.execution-mode", propBuf, "");
if (strcmp(propBuf, "int:portable") == 0) {
executionMode = kEMIntPortable;