From 464e6c415fb34026d931c0f2bf3da06b4144ab40 Mon Sep 17 00:00:00 2001 From: Janis Danisevskis Date: Mon, 5 Apr 2021 12:53:42 -0700 Subject: Keystore 2.0 SPI: Make getAttestationIds return an empty array. getAttestationIds shall return an empty array instead of null. Bug: 184026478 Test: N/A Change-Id: I6c6233fa50a83cf7d6354d2783525704a3b39d0d --- keystore/java/android/security/keystore/KeyGenParameterSpec.java | 9 ++++----- .../security/keystore2/AndroidKeyStoreKeyPairGeneratorSpi.java | 2 +- 2 files changed, 5 insertions(+), 6 deletions(-) (limited to 'keystore/java') diff --git a/keystore/java/android/security/keystore/KeyGenParameterSpec.java b/keystore/java/android/security/keystore/KeyGenParameterSpec.java index 1f9022b4ad3d..a6aa4f21e53b 100644 --- a/keystore/java/android/security/keystore/KeyGenParameterSpec.java +++ b/keystore/java/android/security/keystore/KeyGenParameterSpec.java @@ -353,7 +353,7 @@ public final class KeyGenParameterSpec implements AlgorithmParameterSpec, UserAu boolean userPresenceRequired, byte[] attestationChallenge, boolean devicePropertiesAttestationIncluded, - int[] attestationIds, + @NonNull int[] attestationIds, boolean uniqueIdIncluded, boolean userAuthenticationValidWhileOnBody, boolean invalidatedByBiometricEnrollment, @@ -779,9 +779,8 @@ public final class KeyGenParameterSpec implements AlgorithmParameterSpec, UserAu * @return integer array representing the requested device IDs to attest. */ @SystemApi - @Nullable - public int[] getAttestationIds() { - return Utils.cloneIfNotNull(mAttestationIds); + public @NonNull int[] getAttestationIds() { + return mAttestationIds.clone(); } /** @@ -911,7 +910,7 @@ public final class KeyGenParameterSpec implements AlgorithmParameterSpec, UserAu private boolean mUserPresenceRequired = false; private byte[] mAttestationChallenge = null; private boolean mDevicePropertiesAttestationIncluded = false; - private int[] mAttestationIds = null; + private int[] mAttestationIds = new int[0]; private boolean mUniqueIdIncluded = false; private boolean mUserAuthenticationValidWhileOnBody; private boolean mInvalidatedByBiometricEnrollment = true; diff --git a/keystore/java/android/security/keystore2/AndroidKeyStoreKeyPairGeneratorSpi.java b/keystore/java/android/security/keystore2/AndroidKeyStoreKeyPairGeneratorSpi.java index c26d9f583fd4..dc7f3dda35c0 100644 --- a/keystore/java/android/security/keystore2/AndroidKeyStoreKeyPairGeneratorSpi.java +++ b/keystore/java/android/security/keystore2/AndroidKeyStoreKeyPairGeneratorSpi.java @@ -655,7 +655,7 @@ public abstract class AndroidKeyStoreKeyPairGeneratorSpi extends KeyPairGenerato } int[] idTypes = mSpec.getAttestationIds(); - if (idTypes == null) { + if (idTypes.length == 0) { return; } final Set idTypesSet = new ArraySet<>(idTypes.length); -- cgit v1.2.3-59-g8ed1b