summaryrefslogtreecommitdiffstats
path: root/services/core/java/com/android/server/LockSettingsService.java
diff options
context:
space:
mode:
authorChad Brubaker <cbrubaker@google.com>2015-05-12 13:00:02 -0700
committerChad Brubaker <cbrubaker@google.com>2015-05-13 10:57:42 -0700
commit83ce095c848b972156256855d0f2a2ff4aa068fd (patch)
tree2df49a13e5294a81ef61be72607e7026f9900fdd /services/core/java/com/android/server/LockSettingsService.java
parentc69cd0bf7586c57f9662955d798a2ae0eef6ee76 (diff)
downloadframeworks_base-83ce095c848b972156256855d0f2a2ff4aa068fd.zip
frameworks_base-83ce095c848b972156256855d0f2a2ff4aa068fd.tar.gz
frameworks_base-83ce095c848b972156256855d0f2a2ff4aa068fd.tar.bz2
Add keystore onUserAdded/Removed methods
(cherry-picked from commit 31c2897105e6d71f8e6edeab312d2147bbdbaeb1) Change-Id: I73fe9344ec5660e58425d5c85d14381820533d57
Diffstat (limited to 'services/core/java/com/android/server/LockSettingsService.java')
-rw-r--r--services/core/java/com/android/server/LockSettingsService.java16
1 files changed, 4 insertions, 12 deletions
diff --git a/services/core/java/com/android/server/LockSettingsService.java b/services/core/java/com/android/server/LockSettingsService.java
index ed2de4a..2df7f79 100644
--- a/services/core/java/com/android/server/LockSettingsService.java
+++ b/services/core/java/com/android/server/LockSettingsService.java
@@ -106,20 +106,13 @@ public class LockSettingsService extends ILockSettings.Stub {
@Override
public void onReceive(Context context, Intent intent) {
if (Intent.ACTION_USER_ADDED.equals(intent.getAction())) {
+ // Notify keystore that a new user was added.
final int userHandle = intent.getIntExtra(Intent.EXTRA_USER_HANDLE, 0);
- final int userSysUid = UserHandle.getUid(userHandle, Process.SYSTEM_UID);
final KeyStore ks = KeyStore.getInstance();
-
- // Clear up keystore in case anything was left behind by previous users
- ks.resetUid(userSysUid);
-
- // If this user has a parent, sync with its keystore password
final UserManager um = (UserManager) mContext.getSystemService(USER_SERVICE);
final UserInfo parentInfo = um.getProfileParent(userHandle);
- if (parentInfo != null) {
- final int parentSysUid = UserHandle.getUid(parentInfo.id, Process.SYSTEM_UID);
- ks.syncUid(parentSysUid, userSysUid);
- }
+ final int parentHandle = parentInfo != null ? parentInfo.id : -1;
+ ks.onUserAdded(userHandle, parentHandle);
} else if (Intent.ACTION_USER_STARTING.equals(intent.getAction())) {
final int userHandle = intent.getIntExtra(Intent.EXTRA_USER_HANDLE, 0);
mStorage.prefetchUser(userHandle);
@@ -674,8 +667,7 @@ public class LockSettingsService extends ILockSettings.Stub {
mStorage.removeUser(userId);
final KeyStore ks = KeyStore.getInstance();
- final int userUid = UserHandle.getUid(userId, Process.SYSTEM_UID);
- ks.resetUid(userUid);
+ ks.onUserRemoved(userId);
}
private static final String[] VALID_SETTINGS = new String[] {