diff options
| author | Alex Klyubin <klyubin@google.com> | 2015-05-06 10:16:57 -0700 |
|---|---|---|
| committer | Alex Klyubin <klyubin@google.com> | 2015-05-06 10:16:57 -0700 |
| commit | 9cfc428a244c8b2c7a404a430b1b3991b1950c62 (patch) | |
| tree | 413c50c9cdb666c8697a48b499934baf7a572f1c /keystore/java/android/security/KeyStoreHmacSpi.java | |
| parent | 28a516280a59a81aeecbf4a68057019d59feb872 (diff) | |
| download | frameworks_base-9cfc428a244c8b2c7a404a430b1b3991b1950c62.zip frameworks_base-9cfc428a244c8b2c7a404a430b1b3991b1950c62.tar.gz frameworks_base-9cfc428a244c8b2c7a404a430b1b3991b1950c62.tar.bz2 | |
Keystore uses 0 for invalid operation handles.
This propagates the concept that 0 is an invalid crypto operation
handle to the outside of AndroidKeyStore abstraction.
Bug: 20864436
Change-Id: I1e5abb66c5d41d8fc32aac44372495a708c2b6e2
Diffstat (limited to 'keystore/java/android/security/KeyStoreHmacSpi.java')
| -rw-r--r-- | keystore/java/android/security/KeyStoreHmacSpi.java | 11 |
1 files changed, 7 insertions, 4 deletions
diff --git a/keystore/java/android/security/KeyStoreHmacSpi.java b/keystore/java/android/security/KeyStoreHmacSpi.java index e993b50..0dbe788 100644 --- a/keystore/java/android/security/KeyStoreHmacSpi.java +++ b/keystore/java/android/security/KeyStoreHmacSpi.java @@ -75,7 +75,7 @@ public abstract class KeyStoreHmacSpi extends MacSpi implements KeyStoreCryptoOp // Fields below are reset when engineDoFinal succeeds. private KeyStoreCryptoOperationChunkedStreamer mChunkedStreamer; private IBinder mOperationToken; - private Long mOperationHandle; + private long mOperationHandle; protected KeyStoreHmacSpi(int keymasterDigest) { mKeymasterDigest = keymasterDigest; @@ -128,7 +128,7 @@ public abstract class KeyStoreHmacSpi extends MacSpi implements KeyStoreCryptoOp mOperationToken = null; mKeyStore.abort(operationToken); } - mOperationHandle = null; + mOperationHandle = 0; mChunkedStreamer = null; } @@ -138,7 +138,7 @@ public abstract class KeyStoreHmacSpi extends MacSpi implements KeyStoreCryptoOp mOperationToken = null; mKeyStore.abort(operationToken); } - mOperationHandle = null; + mOperationHandle = 0; mChunkedStreamer = null; } @@ -187,6 +187,9 @@ public abstract class KeyStoreHmacSpi extends MacSpi implements KeyStoreCryptoOp if (mOperationToken == null) { throw new IllegalStateException("Keystore returned null operation token"); } + if (mOperationHandle == 0) { + throw new IllegalStateException("Keystore returned invalid operation handle"); + } mChunkedStreamer = new KeyStoreCryptoOperationChunkedStreamer( new KeyStoreCryptoOperationChunkedStreamer.MainDataStream( @@ -249,7 +252,7 @@ public abstract class KeyStoreHmacSpi extends MacSpi implements KeyStoreCryptoOp } @Override - public Long getOperationHandle() { + public long getOperationHandle() { return mOperationHandle; } } |
