Loading keystore/java/android/security/keystore2/KeyStoreCryptoOperationUtils.java +14 −9 Original line number Diff line number Diff line Loading @@ -18,6 +18,7 @@ package android.security.keystore2; import android.app.ActivityThread; import android.hardware.biometrics.BiometricManager; import android.hardware.security.keymint.ErrorCode; import android.security.GateKeeper; import android.security.KeyStore; import android.security.KeyStoreException; Loading Loading @@ -183,9 +184,12 @@ abstract class KeyStoreCryptoOperationUtils { try { operation.abort(); } catch (KeyStoreException e) { // We log this error, but we can afford to ignore it. Dropping the reference // Invalid operation handle is very common at this point. It occurs every time // an already finalized operation gets aborted. if (e.getErrorCode() != ErrorCode.INVALID_OPERATION_HANDLE) { // This error gets logged but ignored. Dropping the reference // to the KeyStoreOperation is enough to clean up all related resources even // in the Keystore daemon. We log it anyway, because it may indicate some // in the Keystore daemon. It gets logged anyway, because it may indicate some // underlying problem that is worth debugging. Log.w( "KeyStoreCryptoOperationUtils", Loading @@ -195,6 +199,7 @@ abstract class KeyStoreCryptoOperationUtils { } } } } static long getOrMakeOperationChallenge(KeyStoreOperation operation, AndroidKeyStoreKey key) throws KeyPermanentlyInvalidatedException { Loading Loading
keystore/java/android/security/keystore2/KeyStoreCryptoOperationUtils.java +14 −9 Original line number Diff line number Diff line Loading @@ -18,6 +18,7 @@ package android.security.keystore2; import android.app.ActivityThread; import android.hardware.biometrics.BiometricManager; import android.hardware.security.keymint.ErrorCode; import android.security.GateKeeper; import android.security.KeyStore; import android.security.KeyStoreException; Loading Loading @@ -183,9 +184,12 @@ abstract class KeyStoreCryptoOperationUtils { try { operation.abort(); } catch (KeyStoreException e) { // We log this error, but we can afford to ignore it. Dropping the reference // Invalid operation handle is very common at this point. It occurs every time // an already finalized operation gets aborted. if (e.getErrorCode() != ErrorCode.INVALID_OPERATION_HANDLE) { // This error gets logged but ignored. Dropping the reference // to the KeyStoreOperation is enough to clean up all related resources even // in the Keystore daemon. We log it anyway, because it may indicate some // in the Keystore daemon. It gets logged anyway, because it may indicate some // underlying problem that is worth debugging. Log.w( "KeyStoreCryptoOperationUtils", Loading @@ -195,6 +199,7 @@ abstract class KeyStoreCryptoOperationUtils { } } } } static long getOrMakeOperationChallenge(KeyStoreOperation operation, AndroidKeyStoreKey key) throws KeyPermanentlyInvalidatedException { Loading