summaryrefslogtreecommitdiffstats
path: root/packages/SettingsProvider
diff options
context:
space:
mode:
authorDoug Zongker <dougz@android.com>2010-08-21 09:43:58 -0700
committerAndroid Git Automerger <android-git-automerger@android.com>2010-08-21 09:43:58 -0700
commit7e84159f5f79835c6ae82bc6b4d8ef4bf131496f (patch)
treebdc865dc1e9b18ce7b9d4fa672733499147cb01c /packages/SettingsProvider
parent349250f3b64421f59439355c80a4540fbb34dda5 (diff)
parent36c051c717391afe12a1fe8163960286175f2f7e (diff)
downloadframeworks_base-7e84159f5f79835c6ae82bc6b4d8ef4bf131496f.zip
frameworks_base-7e84159f5f79835c6ae82bc6b4d8ef4bf131496f.tar.gz
frameworks_base-7e84159f5f79835c6ae82bc6b4d8ef4bf131496f.tar.bz2
am 36c051c7: am a695cbc9: am 0fe27cf5: make android_id random seed depend on time as well as ro.serialno
Merge commit '36c051c717391afe12a1fe8163960286175f2f7e' * commit '36c051c717391afe12a1fe8163960286175f2f7e': make android_id random seed depend on time as well as ro.serialno
Diffstat (limited to 'packages/SettingsProvider')
-rw-r--r--packages/SettingsProvider/src/com/android/providers/settings/SettingsProvider.java13
1 files changed, 4 insertions, 9 deletions
diff --git a/packages/SettingsProvider/src/com/android/providers/settings/SettingsProvider.java b/packages/SettingsProvider/src/com/android/providers/settings/SettingsProvider.java
index 6a5290e..2e95932 100644
--- a/packages/SettingsProvider/src/com/android/providers/settings/SettingsProvider.java
+++ b/packages/SettingsProvider/src/com/android/providers/settings/SettingsProvider.java
@@ -222,16 +222,11 @@ public class SettingsProvider extends ContentProvider {
final String value = c.moveToNext() ? c.getString(0) : null;
if (value == null) {
final SecureRandom random = SecureRandom.getInstance("SHA1PRNG");
- String serial = SystemProperties.get("ro.serialno");
- if (serial != null) {
- try {
- random.setSeed(serial.getBytes("UTF-8"));
- } catch (UnsupportedEncodingException ignore) {
- // stick with default seed
- }
- }
+ String serial = SystemProperties.get("ro.serialno", "");
+ random.setSeed(
+ (serial + System.nanoTime() + new SecureRandom().nextLong()).getBytes());
final String newAndroidIdValue = Long.toHexString(random.nextLong());
- Log.d(TAG, "Generated and saved new ANDROID_ID");
+ Log.d(TAG, "Generated and saved new ANDROID_ID [" + newAndroidIdValue + "]");
final ContentValues values = new ContentValues();
values.put(Settings.NameValueTable.NAME, Settings.Secure.ANDROID_ID);
values.put(Settings.NameValueTable.VALUE, newAndroidIdValue);