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

Commit cdebe28c authored by Robin Lee's avatar Robin Lee
Browse files

Add lockdownEnabled parameter to always-on VPN API

Allows callers to opt-out of blockading network traffic during boot and
on VPN app failure.

Bug: 26694104
Change-Id: Ic2c25b79d8a17917025eb37be7de929fe156e2a3
parent e69d7548
Loading
Loading
Loading
Loading
+1 −1
Original line number Diff line number Diff line
@@ -138,7 +138,7 @@ public class AppDialogFragment extends DialogFragment implements AppDialog.Liste
        final int userId = UserHandle.getUserId(mPackageInfo.applicationInfo.uid);
        try {
            if (mPackageInfo.packageName.equals(getConnectedPackage(mService, userId))) {
                mService.setAlwaysOnVpnPackage(userId, null);
                mService.setAlwaysOnVpnPackage(userId, null, /* lockdownEnabled */ false);
                mService.prepareVpn(mPackageInfo.packageName, VpnConfig.LEGACY_VPN, userId);
            }
        } catch (RemoteException e) {
+2 −1
Original line number Diff line number Diff line
@@ -176,7 +176,8 @@ public class AppManagementFragment extends SettingsPreferenceFragment
        if (mUserId == UserHandle.USER_SYSTEM) {
            VpnUtils.clearLockdownVpn(getContext());
        }
        mConnectivityManager.setAlwaysOnVpnPackageForUser(mUserId, isEnabled ? mPackageName : null);
        mConnectivityManager.setAlwaysOnVpnPackageForUser(mUserId, isEnabled ? mPackageName : null,
                /* lockdownEnabled */ false);
        if (isEnabled && !isVpnAlwaysOn()) {
            CannotConnectFragment.show(this, mVpnLabel);
        }
+2 −1
Original line number Diff line number Diff line
@@ -153,7 +153,8 @@ public class ConfigDialogFragment extends DialogFragment implements
            }

            final ConnectivityManager conn = ConnectivityManager.from(getActivity());
            conn.setAlwaysOnVpnPackageForUser(UserHandle.myUserId(), null);
            conn.setAlwaysOnVpnPackageForUser(UserHandle.myUserId(), null,
                    /* lockdownEnabled */ false);
            VpnUtils.setLockdownVpn(getContext(), profile.key);
        } else {
            // update only if lockdown vpn has been changed