Merge "Private DNS: Add user restriction"

This commit is contained in:
TreeHugger Robot
2018-10-17 08:36:56 +00:00
committed by Android (Google) Code Review
3 changed files with 24 additions and 2 deletions

View File

@@ -33804,6 +33804,7 @@ package android.os {
field public static final java.lang.String DISALLOW_CONFIG_LOCALE = "no_config_locale";
field public static final java.lang.String DISALLOW_CONFIG_LOCATION = "no_config_location";
field public static final java.lang.String DISALLOW_CONFIG_MOBILE_NETWORKS = "no_config_mobile_networks";
field public static final java.lang.String DISALLOW_CONFIG_PRIVATE_DNS = "disallow_config_private_dns";
field public static final java.lang.String DISALLOW_CONFIG_SCREEN_TIMEOUT = "no_config_screen_timeout";
field public static final java.lang.String DISALLOW_CONFIG_TETHERING = "no_config_tethering";
field public static final java.lang.String DISALLOW_CONFIG_VPN = "no_config_vpn";

View File

@@ -982,6 +982,21 @@ public class UserManager {
*/
public static final String DISALLOW_PRINTING = "no_printing";
/**
* Specifies whether the user is allowed to modify private DNS settings.
*
* <p>The default value is <code>false</code>.
*
* <p>This user restriction can only be applied by the Device Owner.
* <p>Key for user restrictions.
* <p>Type: Boolean
* @see DevicePolicyManager#addUserRestriction(ComponentName, String)
* @see DevicePolicyManager#clearUserRestriction(ComponentName, String)
* @see #getUserRestrictions()
*/
public static final String DISALLOW_CONFIG_PRIVATE_DNS =
"disallow_config_private_dns";
/**
* Application restriction key that is used to indicate the pending arrival
* of real restrictions for the app.

View File

@@ -127,7 +127,8 @@ public class UserRestrictionsUtils {
UserManager.DISALLOW_SHARE_INTO_MANAGED_PROFILE,
UserManager.DISALLOW_AMBIENT_DISPLAY,
UserManager.DISALLOW_CONFIG_SCREEN_TIMEOUT,
UserManager.DISALLOW_PRINTING
UserManager.DISALLOW_PRINTING,
UserManager.DISALLOW_CONFIG_PRIVATE_DNS
});
/**
@@ -163,7 +164,8 @@ public class UserRestrictionsUtils {
* User restrictions that cannot be set by profile owners. Applied to all users.
*/
private static final Set<String> DEVICE_OWNER_ONLY_RESTRICTIONS = Sets.newArraySet(
UserManager.DISALLOW_USER_SWITCH
UserManager.DISALLOW_USER_SWITCH,
UserManager.DISALLOW_CONFIG_PRIVATE_DNS
);
/**
@@ -741,6 +743,10 @@ public class UserRestrictionsUtils {
restriction = UserManager.DISALLOW_CONFIG_SCREEN_TIMEOUT;
break;
case android.provider.Settings.Global.PRIVATE_DNS_MODE:
case android.provider.Settings.Global.PRIVATE_DNS_SPECIFIER:
restriction = UserManager.DISALLOW_CONFIG_PRIVATE_DNS;
break;
default:
if (setting.startsWith(Settings.Global.DATA_ROAMING)) {
if ("0".equals(value)) {