summaryrefslogtreecommitdiffstats
path: root/keystore/java/android
diff options
context:
space:
mode:
authorChad Brubaker <cbrubaker@google.com>2015-06-01 12:57:06 -0700
committerChad Brubaker <cbrubaker@google.com>2015-06-01 15:16:06 -0700
commit966486e134c901ea61195b352fdd81476b3639b4 (patch)
tree5562d3bab21e3f33e4563ef85f4cc8f901e29d92 /keystore/java/android
parente1c68765cf53473e710438f90e42e0cb26dffe1b (diff)
downloadframeworks_base-966486e134c901ea61195b352fdd81476b3639b4.zip
frameworks_base-966486e134c901ea61195b352fdd81476b3639b4.tar.gz
frameworks_base-966486e134c901ea61195b352fdd81476b3639b4.tar.bz2
Track changes to the keystore binder API
Output parameters are gone from begin, instead they will returned in the OperationResult and begin, update, and finish may return output parameters. Change-Id: I072afeb6c65f6c512b40603824c25686ac44e7c8
Diffstat (limited to 'keystore/java/android')
-rw-r--r--keystore/java/android/security/KeyStore.java4
-rw-r--r--keystore/java/android/security/keystore/AndroidKeyStoreCipherSpiBase.java5
-rw-r--r--keystore/java/android/security/keystore/AndroidKeyStoreHmacSpi.java5
3 files changed, 6 insertions, 8 deletions
diff --git a/keystore/java/android/security/KeyStore.java b/keystore/java/android/security/KeyStore.java
index 72eda23..37ed723 100644
--- a/keystore/java/android/security/KeyStore.java
+++ b/keystore/java/android/security/KeyStore.java
@@ -496,9 +496,9 @@ public class KeyStore {
}
public OperationResult begin(String alias, int purpose, boolean pruneable,
- KeymasterArguments args, byte[] entropy, KeymasterArguments outArgs) {
+ KeymasterArguments args, byte[] entropy) {
try {
- return mBinder.begin(getToken(), alias, purpose, pruneable, args, entropy, outArgs);
+ return mBinder.begin(getToken(), alias, purpose, pruneable, args, entropy);
} catch (RemoteException e) {
Log.w(TAG, "Cannot connect to keystore", e);
return null;
diff --git a/keystore/java/android/security/keystore/AndroidKeyStoreCipherSpiBase.java b/keystore/java/android/security/keystore/AndroidKeyStoreCipherSpiBase.java
index be935a9..3ad3c9d 100644
--- a/keystore/java/android/security/keystore/AndroidKeyStoreCipherSpiBase.java
+++ b/keystore/java/android/security/keystore/AndroidKeyStoreCipherSpiBase.java
@@ -216,8 +216,7 @@ abstract class AndroidKeyStoreCipherSpiBase extends CipherSpi implements KeyStor
mEncrypting ? KeymasterDefs.KM_PURPOSE_ENCRYPT : KeymasterDefs.KM_PURPOSE_DECRYPT,
true, // permit aborting this operation if keystore runs out of resources
keymasterInputArgs,
- additionalEntropy,
- keymasterOutputArgs);
+ additionalEntropy);
if (opResult == null) {
throw new KeyStoreConnectException();
}
@@ -247,7 +246,7 @@ abstract class AndroidKeyStoreCipherSpiBase extends CipherSpi implements KeyStor
throw new ProviderException("Keystore returned invalid operation handle");
}
- loadAlgorithmSpecificParametersFromBeginResult(keymasterOutputArgs);
+ loadAlgorithmSpecificParametersFromBeginResult(opResult.outParams);
mMainDataStreamer = new KeyStoreCryptoOperationChunkedStreamer(
new KeyStoreCryptoOperationChunkedStreamer.MainDataStream(
mKeyStore, opResult.token));
diff --git a/keystore/java/android/security/keystore/AndroidKeyStoreHmacSpi.java b/keystore/java/android/security/keystore/AndroidKeyStoreHmacSpi.java
index 6422374..f31c06d 100644
--- a/keystore/java/android/security/keystore/AndroidKeyStoreHmacSpi.java
+++ b/keystore/java/android/security/keystore/AndroidKeyStoreHmacSpi.java
@@ -163,14 +163,13 @@ public abstract class AndroidKeyStoreHmacSpi extends MacSpi implements KeyStoreC
keymasterArgs.addInt(KeymasterDefs.KM_TAG_DIGEST, mKeymasterDigest);
keymasterArgs.addInt(KeymasterDefs.KM_TAG_MAC_LENGTH, mMacSizeBits);
- KeymasterArguments keymasterOutputArgs = new KeymasterArguments();
OperationResult opResult = mKeyStore.begin(
mKey.getAlias(),
KeymasterDefs.KM_PURPOSE_SIGN,
true,
keymasterArgs,
- null, // no additional entropy needed for HMAC because it's deterministic
- keymasterOutputArgs);
+ null); // no additional entropy needed for HMAC because it's deterministic
+
if (opResult == null) {
throw new KeyStoreConnectException();
}