From d9453b8ba17f93643d9b98b19247f5b243d25dc0 Mon Sep 17 00:00:00 2001 From: Samuel Tan Date: Mon, 14 Mar 2016 15:57:02 -0700 Subject: [PATCH] Disallow guest user from changing Wifi settings Disallow existing and newly created guest users from changing Wifi settings. BUG: 27411179 TEST: Flashed device, switched to existing guest user, and verified that Wifi settings are disabled. TEST: Flashed device, created new guest user, and verified that Wifi settings are disabled. Change-Id: Ia1bf4cce0369017b62f69d317c7ab2e30e3949b3 --- .../java/com/android/server/pm/UserManagerService.java | 10 ++++++++++ 1 file changed, 10 insertions(+) diff --git a/services/core/java/com/android/server/pm/UserManagerService.java b/services/core/java/com/android/server/pm/UserManagerService.java index 5fd196b4eb5bf..a3622b58cb4d7 100644 --- a/services/core/java/com/android/server/pm/UserManagerService.java +++ b/services/core/java/com/android/server/pm/UserManagerService.java @@ -387,6 +387,15 @@ public class UserManagerService extends IUserManager.Stub { synchronized (mRestrictionsLock) { applyUserRestrictionsLR(UserHandle.USER_SYSTEM); } + + UserInfo currentGuestUser = findCurrentGuestUser(); + if (currentGuestUser != null && !hasUserRestriction( + UserManager.DISALLOW_CONFIG_WIFI, currentGuestUser.id)) { + // If a guest user currently exists, apply the DISALLOW_CONFIG_WIFI option + // to it, in case this guest was created in a previous version where this + // user restriction was not a default guest restriction. + setUserRestriction(UserManager.DISALLOW_CONFIG_WIFI, true, currentGuestUser.id); + } } @Override @@ -828,6 +837,7 @@ public class UserManagerService extends IUserManager.Stub { private void initDefaultGuestRestrictions() { synchronized (mGuestRestrictions) { if (mGuestRestrictions.isEmpty()) { + mGuestRestrictions.putBoolean(UserManager.DISALLOW_CONFIG_WIFI, true); mGuestRestrictions.putBoolean(UserManager.DISALLOW_INSTALL_UNKNOWN_SOURCES, true); mGuestRestrictions.putBoolean(UserManager.DISALLOW_OUTGOING_CALLS, true); mGuestRestrictions.putBoolean(UserManager.DISALLOW_SMS, true);