diff options
author | Andrei Onea <andreionea@google.com> | 2020-01-09 16:57:42 +0000 |
---|---|---|
committer | Andrei Onea <andreionea@google.com> | 2020-01-15 18:00:44 +0000 |
commit | 6e4cec49db8ba106ca8a24d9f78fafb63ac194bf (patch) | |
tree | f3e4e84c2c526ec168c3ef42fd1082fcd340fd6a /libart | |
parent | ab1c6c4c7a7dd103bf58288bf3f50652985fdc32 (diff) |
Add change id for hidden api check hardening
This removes a workaround that allows bypassing hidden api checks.
Bug: 142365358
Test: art/test/testrunner/testrunner.py --target --64 -t674-hiddenapi
Test: art/test/testrunner/run_build_test_target.py -j110 art-asan
Change-Id: Icfd0cd8b7ae5ae7534bdc475a815a4598e5da347
Diffstat (limited to 'libart')
-rw-r--r-- | libart/src/main/java/dalvik/system/VMRuntime.java | 14 |
1 files changed, 14 insertions, 0 deletions
diff --git a/libart/src/main/java/dalvik/system/VMRuntime.java b/libart/src/main/java/dalvik/system/VMRuntime.java index 0f2f75dc60..a97d7fc48a 100644 --- a/libart/src/main/java/dalvik/system/VMRuntime.java +++ b/libart/src/main/java/dalvik/system/VMRuntime.java @@ -16,8 +16,12 @@ package dalvik.system; +import android.compat.annotation.ChangeId; +import android.compat.annotation.EnabledAfter; import android.compat.annotation.UnsupportedAppUsage; +import dalvik.annotation.compat.VersionCodes; + import java.lang.ref.FinalizerReference; import java.util.HashMap; import java.util.Map; @@ -59,6 +63,16 @@ public final class VMRuntime { } /** + * Remove meta-reflection workaround for hidden api usage for apps targeting R+. This allowed + * apps to obtain references to blacklisted fields and methods through an extra layer of + * reflection. + */ + @ChangeId + @EnabledAfter(targetSdkVersion = VersionCodes.Q) + private static final long + PREVENT_META_REFLECTION_BLACKLIST_ACCESS = 142365358; // This is a bug id. + + /** * Interface for logging hidden API usage events. */ @libcore.api.CorePlatformApi |