diff --git a/framework/src/android/net/ConnectivityManager.java b/framework/src/android/net/ConnectivityManager.java index 071ec34b62..d3414a404d 100644 --- a/framework/src/android/net/ConnectivityManager.java +++ b/framework/src/android/net/ConnectivityManager.java @@ -1069,6 +1069,58 @@ public class ConnectivityManager { } } + /** + * Calls VpnManager#isAlwaysOnVpnPackageSupportedForUser. + * @deprecated TODO: remove when callers have migrated to VpnManager. + * @hide + */ + @Deprecated + public boolean isAlwaysOnVpnPackageSupportedForUser(int userId, @Nullable String vpnPackage) { + return getVpnManager().isAlwaysOnVpnPackageSupportedForUser(userId, vpnPackage); + } + + /** + * Calls VpnManager#setAlwaysOnVpnPackageForUser. + * @deprecated TODO: remove when callers have migrated to VpnManager. + * @hide + */ + @Deprecated + public boolean setAlwaysOnVpnPackageForUser(int userId, @Nullable String vpnPackage, + boolean lockdownEnabled, @Nullable List lockdownAllowlist) { + return getVpnManager().setAlwaysOnVpnPackageForUser(userId, vpnPackage, lockdownEnabled, + lockdownAllowlist); + } + + /** + * Calls VpnManager#getAlwaysOnVpnPackageForUser. + * @deprecated TODO: remove when callers have migrated to VpnManager. + * @hide + */ + @Deprecated + public String getAlwaysOnVpnPackageForUser(int userId) { + return getVpnManager().getAlwaysOnVpnPackageForUser(userId); + } + + /** + * Calls VpnManager#isVpnLockdownEnabled. + * @deprecated TODO: remove when callers have migrated to VpnManager. + * @hide + */ + @Deprecated + public boolean isVpnLockdownEnabled(int userId) { + return getVpnManager().isVpnLockdownEnabled(userId); + } + + /** + * Calls VpnManager#getVpnLockdownAllowlist. + * @deprecated TODO: remove when callers have migrated to VpnManager. + * @hide + */ + @Deprecated + public List getVpnLockdownAllowlist(int userId) { + return getVpnManager().getVpnLockdownAllowlist(userId); + } + /** * Adds or removes a requirement for given UID ranges to use the VPN. * @@ -3114,6 +3166,16 @@ public class ConnectivityManager { } } + /** + * Calls VpnManager#updateLockdownVpn. + * @deprecated TODO: remove when callers have migrated to VpnManager. + * @hide + */ + @Deprecated + public boolean updateLockdownVpn() { + return getVpnManager().updateLockdownVpn(); + } + /** * Set sign in error notification to visible or invisible * @@ -4475,6 +4537,8 @@ public class ConnectivityManager { try { mService.factoryReset(); mTetheringManager.stopAllTethering(); + // TODO: Migrate callers to VpnManager#factoryReset. + getVpnManager().factoryReset(); } catch (RemoteException e) { throw e.rethrowFromSystemServer(); } @@ -4768,6 +4832,15 @@ public class ConnectivityManager { return new TestNetworkManager(ITestNetworkManager.Stub.asInterface(tnBinder)); } + /** + * Temporary hack to shim calls from ConnectivityManager to VpnManager. We cannot store a + * private final mVpnManager because ConnectivityManager is initialized before VpnManager. + * @hide TODO: remove. + */ + public VpnManager getVpnManager() { + return mContext.getSystemService(VpnManager.class); + } + /** @hide */ public ConnectivityDiagnosticsManager createDiagnosticsManager() { return new ConnectivityDiagnosticsManager(mContext, mService);