From 946e06d7e25a73bacb80fc8a2b5fdeb0b340cc8d Mon Sep 17 00:00:00 2001 From: Victor Hsieh Date: Wed, 12 Feb 2020 12:11:38 -0800 Subject: [PATCH] Enforce fs-verity support for first_api_level >= R This matches the approved CDD requirement. Test: build Bug: 133451372 Change-Id: I4c0defe08c988ac3c07c6a8352f754d222bd3a5d --- .../com/android/server/pm/PackageManagerServiceUtils.java | 4 +++- .../com/android/server/security/FileIntegrityService.java | 4 +++- 2 files changed, 6 insertions(+), 2 deletions(-) diff --git a/services/core/java/com/android/server/pm/PackageManagerServiceUtils.java b/services/core/java/com/android/server/pm/PackageManagerServiceUtils.java index ded9a9c58c5ec..1b2535bec3db8 100644 --- a/services/core/java/com/android/server/pm/PackageManagerServiceUtils.java +++ b/services/core/java/com/android/server/pm/PackageManagerServiceUtils.java @@ -577,7 +577,9 @@ public class PackageManagerServiceUtils { /** Returns true if standard APK Verity is enabled. */ static boolean isApkVerityEnabled() { - return SystemProperties.getInt("ro.apk_verity.mode", FSVERITY_DISABLED) == FSVERITY_ENABLED; + return Build.VERSION.FIRST_SDK_INT >= Build.VERSION_CODES.R + || SystemProperties.getInt("ro.apk_verity.mode", FSVERITY_DISABLED) + == FSVERITY_ENABLED; } static boolean isLegacyApkVerityEnabled() { diff --git a/services/core/java/com/android/server/security/FileIntegrityService.java b/services/core/java/com/android/server/security/FileIntegrityService.java index e90c02aabdfcf..8cf2d0379ec3a 100644 --- a/services/core/java/com/android/server/security/FileIntegrityService.java +++ b/services/core/java/com/android/server/security/FileIntegrityService.java @@ -20,6 +20,7 @@ import android.annotation.NonNull; import android.annotation.Nullable; import android.content.Context; import android.content.pm.PackageManager; +import android.os.Build; import android.os.IBinder; import android.os.Process; import android.os.SystemProperties; @@ -55,7 +56,8 @@ public class FileIntegrityService extends SystemService { private final IBinder mService = new IFileIntegrityService.Stub() { @Override public boolean isApkVeritySupported() { - return SystemProperties.getInt("ro.apk_verity.mode", 0) == 2; + return Build.VERSION.FIRST_SDK_INT >= Build.VERSION_CODES.R + || SystemProperties.getInt("ro.apk_verity.mode", 0) == 2; } @Override