summaryrefslogtreecommitdiff
path: root/keystore/java/android/security/KeyStore.java
diff options
context:
space:
mode:
authorRob Barnes <robbarnes@google.com>2018-12-20 16:10:55 -0800
committerandroid-build-merger <android-build-merger@google.com>2018-12-20 16:10:55 -0800
commit23ae50885f28790cd016ae05dc9cbf6a61c6a2e5 (patch)
tree0edc3d65efd1ee73784b733b593ef7b0703c23fc /keystore/java/android/security/KeyStore.java
parent669fc03fdfdb35ac6d0bef62ea91d7264d5e0aa9 (diff)
parent4718f665d49bc0e6c99a94c51a5a81bd48a0e49c (diff)
Merge "Changed uid output parameter from an int array to a list of strings." am: 7eae0132c1
am: 4718f665d4 Change-Id: If50101aa678acb3b7f1b79646c8ff5f1eb994865
Diffstat (limited to 'keystore/java/android/security/KeyStore.java')
-rw-r--r--keystore/java/android/security/KeyStore.java12
1 files changed, 7 insertions, 5 deletions
diff --git a/keystore/java/android/security/KeyStore.java b/keystore/java/android/security/KeyStore.java
index 6ac52d109032..36b7e37635ca 100644
--- a/keystore/java/android/security/KeyStore.java
+++ b/keystore/java/android/security/KeyStore.java
@@ -54,6 +54,7 @@ import java.math.BigInteger;
import java.io.ByteArrayInputStream;
import java.io.IOException;
import java.security.InvalidKeyException;
+import java.util.ArrayList;
import java.util.Arrays;
import java.util.Date;
import java.util.List;
@@ -303,13 +304,14 @@ public class KeyStore {
}
/**
- * List uids of all keys that are auth bound to the current user.
+ * List uids of all keys that are auth bound to the current user.
* Only system is allowed to call this method.
*/
@UnsupportedAppUsage
public int[] listUidsOfAuthBoundKeys() {
- final int MAX_RESULT_SIZE = 100;
- int[] uidsOut = new int[MAX_RESULT_SIZE];
+ // uids are returned as a list of strings because list of integers
+ // as an output parameter is not supported by aidl-cpp.
+ List<String> uidsOut = new ArrayList<>();
try {
int rc = mBinder.listUidsOfAuthBoundKeys(uidsOut);
if (rc != NO_ERROR) {
@@ -323,8 +325,8 @@ public class KeyStore {
Log.w(TAG, "KeyStore exception", e);
return null;
}
- // Remove any 0 entries
- return Arrays.stream(uidsOut).filter(x -> x > 0).toArray();
+ // Turn list of strings into an array of uid integers.
+ return uidsOut.stream().mapToInt(Integer::parseInt).toArray();
}
public String[] list(String prefix) {