summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
author Neil Fuller <nfuller@google.com> 2019-04-08 22:03:14 +0100
committer Neil Fuller <nfuller@google.com> 2019-04-09 09:09:35 +0100
commit62af80f9c81dd27c94e1e9a15e752acb680bcac4 (patch)
treed518e8bd9c622357e1ed1d3b6547b3e79070fea0
parent5b3a0d18ae31413e61a0647860f093ab6fffaff6 (diff)
Switch to HexEncoding from ByteStringUtils
Migration in preparation for deletion of ByteStringUtils. Bug: 124232146 Test: build only Merged-In: I07983ca596443a3e00616b63355c6504376f3e7c Change-Id: I07983ca596443a3e00616b63355c6504376f3e7c
-rw-r--r--packages/SettingsProvider/src/com/android/providers/settings/SettingsProvider.java17
1 files changed, 10 insertions, 7 deletions
diff --git a/packages/SettingsProvider/src/com/android/providers/settings/SettingsProvider.java b/packages/SettingsProvider/src/com/android/providers/settings/SettingsProvider.java
index 960d30524b95..b389e041adbe 100644
--- a/packages/SettingsProvider/src/com/android/providers/settings/SettingsProvider.java
+++ b/packages/SettingsProvider/src/com/android/providers/settings/SettingsProvider.java
@@ -70,7 +70,6 @@ import android.provider.SettingsValidators;
import android.text.TextUtils;
import android.util.ArrayMap;
import android.util.ArraySet;
-import android.util.ByteStringUtils;
import android.util.Slog;
import android.util.SparseArray;
import android.util.SparseBooleanArray;
@@ -83,6 +82,8 @@ import com.android.providers.settings.SettingsState.Setting;
import com.android.server.LocalServices;
import com.android.server.SystemConfig;
+import libcore.util.HexEncoding;
+
import java.io.File;
import java.io.FileDescriptor;
import java.io.FileNotFoundException;
@@ -96,7 +97,6 @@ import java.util.Arrays;
import java.util.Collection;
import java.util.HashSet;
import java.util.List;
-import java.util.Locale;
import java.util.Map;
import java.util.Set;
import java.util.regex.Pattern;
@@ -2144,7 +2144,7 @@ public class SettingsProvider extends ContentProvider {
rand.nextBytes(keyBytes);
// Convert to string for storage in settings table.
- final String userKey = ByteStringUtils.toHexString(keyBytes);
+ final String userKey = HexEncoding.encodeToString(keyBytes, true /* upperCase */);
// Store the key in the ssaid table.
final SettingsState ssaidSettings = getSettingsLocked(SETTINGS_TYPE_SSAID, userId);
@@ -2174,13 +2174,16 @@ public class SettingsProvider extends ContentProvider {
}
}
final String userKey = userKeySetting.getValue();
+ if (userKey == null || userKey.length() % 2 != 0) {
+ throw new IllegalStateException("User key invalid");
+ }
// Convert the user's key back to a byte array.
- final byte[] keyBytes = ByteStringUtils.fromHexToByteArray(userKey);
+ final byte[] keyBytes = HexEncoding.decode(userKey);
// Validate that the key is of expected length.
// Keys are currently 32 bytes, but were once 16 bytes during Android O development.
- if (keyBytes == null || (keyBytes.length != 16 && keyBytes.length != 32)) {
+ if (keyBytes.length != 16 && keyBytes.length != 32) {
throw new IllegalStateException("User key invalid");
}
@@ -2202,8 +2205,8 @@ public class SettingsProvider extends ContentProvider {
}
// Convert result to a string for storage in settings table. Only want first 64 bits.
- final String ssaid = ByteStringUtils.toHexString(m.doFinal()).substring(0, 16)
- .toLowerCase(Locale.US);
+ final String ssaid = HexEncoding.encodeToString(m.doFinal(), false /* upperCase */)
+ .substring(0, 16);
// Save the ssaid in the ssaid table.
final String uid = Integer.toString(callingPkg.applicationInfo.uid);