Minor changes to check for misprovisioned Pixel 2 devices
Check for brand parameter specified in config file. Implementing suggestion that was added to the original CL (ag/4791307) after it was submitted.
Bug: 69471841
Test: atest com.android.cts.devicepolicy.MixedDeviceOwnerTest#testKeyManagement
Change-Id: I9b257f406d5b47265db4dbf022df75865f496cdd
diff --git a/keystore/java/android/security/keystore/AttestationUtils.java b/keystore/java/android/security/keystore/AttestationUtils.java
index 3d2a271..bd497c1 100644
--- a/keystore/java/android/security/keystore/AttestationUtils.java
+++ b/keystore/java/android/security/keystore/AttestationUtils.java
@@ -29,6 +29,7 @@
import android.security.keymaster.KeymasterCertificateChain;
import android.security.keymaster.KeymasterDefs;
import android.telephony.TelephonyManager;
+import android.text.TextUtils;
import android.util.ArraySet;
import java.io.ByteArrayInputStream;
@@ -128,14 +129,14 @@
@NonNull public static KeymasterArguments prepareAttestationArgumentsIfMisprovisioned(
Context context, @NonNull int[] idTypes, @NonNull byte[] attestationChallenge) throws
DeviceIdAttestationException {
- if (!isPotentiallyMisprovisionedDevice(context)) {
- return null;
- }
Resources resources = context.getResources();
String misprovisionedBrand = resources.getString(
com.android.internal.R.string.config_misprovisionedBrandValue);
+ if (!TextUtils.isEmpty(misprovisionedBrand) && !isPotentiallyMisprovisionedDevice(context)){
+ return null;
+ }
return prepareAttestationArguments(
- context, idTypes, attestationChallenge, misprovisionedBrand);
+ context, idTypes, attestationChallenge, misprovisionedBrand);
}
@NonNull private static boolean isPotentiallyMisprovisionedDevice(Context context) {