Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 7096dead authored by Nataniel Borges's avatar Nataniel Borges Committed by Gerrit Code Review
Browse files

Merge "Revert "Delete VPN methods in ConnectivityManager.""

parents e8817c17 51bf8e97
Loading
Loading
Loading
Loading
+73 −0
Original line number Diff line number Diff line
@@ -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<String> 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<String> 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);
+4 −4
Original line number Diff line number Diff line
@@ -23,7 +23,7 @@ import static android.view.WindowManager.LayoutParams.TYPE_SYSTEM_ALERT;
import android.content.DialogInterface;
import android.content.Intent;
import android.content.pm.PackageManager;
import android.net.VpnManager;
import android.net.ConnectivityManager;
import android.os.Bundle;
import android.os.UserHandle;
import android.provider.Settings;
@@ -42,7 +42,7 @@ public class AlwaysOnDisconnectedDialog extends AlertActivity

    private static final String TAG = "VpnDisconnected";

    private VpnManager mService;
    private ConnectivityManager mService;
    private int mUserId;
    private String mVpnPackage;

@@ -51,8 +51,8 @@ public class AlwaysOnDisconnectedDialog extends AlertActivity
        super.onCreate(savedInstanceState);

        mUserId = UserHandle.myUserId();
        final VpnManager vm = getSystemService(VpnManager.class);
        mVpnPackage = vm.getAlwaysOnVpnPackageForUser(mUserId);
        final ConnectivityManager cm = getSystemService(ConnectivityManager.class);
        mVpnPackage = cm.getAlwaysOnVpnPackageForUser(mUserId);
        if (mVpnPackage == null) {
            finish();
            return;
+4 −1
Original line number Diff line number Diff line
@@ -21,6 +21,7 @@ import static android.view.WindowManager.LayoutParams.SYSTEM_FLAG_HIDE_NON_SYSTE
import android.content.DialogInterface;
import android.content.pm.PackageManager;
import android.graphics.drawable.Drawable;
import android.net.ConnectivityManager;
import android.net.VpnManager;
import android.os.Bundle;
import android.os.UserHandle;
@@ -44,6 +45,7 @@ public class ConfirmDialog extends AlertActivity

    private String mPackage;

    private ConnectivityManager mCm;  // TODO: switch entirely to VpnManager once VPN code moves
    private VpnManager mVm;

    public ConfirmDialog() {
@@ -58,6 +60,7 @@ public class ConfirmDialog extends AlertActivity
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        mPackage = getCallingPackage();
        mCm = getSystemService(ConnectivityManager.class);
        mVm = getSystemService(VpnManager.class);

        if (mVm.prepareVpn(mPackage, null, UserHandle.myUserId())) {
@@ -69,7 +72,7 @@ public class ConfirmDialog extends AlertActivity
            finish();
            return;
        }
        final String alwaysOnVpnPackage = mVm.getAlwaysOnVpnPackageForUser(UserHandle.myUserId());
        final String alwaysOnVpnPackage = mCm.getAlwaysOnVpnPackageForUser(UserHandle.myUserId());
        // Can't prepare new vpn app when another vpn is always-on
        if (alwaysOnVpnPackage != null && !alwaysOnVpnPackage.equals(mPackage)) {
            finish();