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

Commit 20e39131 authored by Treehugger Robot's avatar Treehugger Robot Committed by Gerrit Code Review
Browse files

Merge changes I62c58967,I1dd57fa2

* changes:
  Remove ConnectivityManager from EnterprisePrivacyFeatureProvider.
  Stop using ConnectivityManager for VPNs.
parents ace5a908 65128bab
Loading
Loading
Loading
Loading
+0 −5
Original line number Diff line number Diff line
@@ -84,11 +84,6 @@ public interface EnterprisePrivacyFeatureProvider {
     */
    boolean isAlwaysOnVpnSetInManagedProfile();

    /**
     * Returns whether the Device Owner set a recommended global HTTP proxy.
     */
    boolean isGlobalHttpProxySet();

    /**
     * Returns the number of failed login attempts that the Device Owner or Profile Owner allows
     * before the current user is wiped, or zero if no such limit is set.
+6 −8
Original line number Diff line number Diff line
@@ -25,6 +25,7 @@ import android.content.pm.ResolveInfo;
import android.content.pm.UserInfo;
import android.content.res.Resources;
import android.net.ConnectivityManager;
import android.net.VpnManager;
import android.os.UserHandle;
import android.os.UserManager;
import android.provider.Settings;
@@ -45,18 +46,20 @@ public class EnterprisePrivacyFeatureProviderImpl implements EnterprisePrivacyFe
    private final PackageManager mPm;
    private final UserManager mUm;
    private final ConnectivityManager mCm;
    private final VpnManager mVm;
    private final Resources mResources;

    private static final int MY_USER_ID = UserHandle.myUserId();

    public EnterprisePrivacyFeatureProviderImpl(Context context, DevicePolicyManager dpm,
            PackageManager pm, UserManager um, ConnectivityManager cm,
            PackageManager pm, UserManager um, ConnectivityManager cm, VpnManager vm,
            Resources resources) {
        mContext = context.getApplicationContext();
        mDpm = dpm;
        mPm = pm;
        mUm = um;
        mCm = cm;
        mVm = vm;
        mResources = resources;
    }

@@ -130,19 +133,14 @@ public class EnterprisePrivacyFeatureProviderImpl implements EnterprisePrivacyFe

    @Override
    public boolean isAlwaysOnVpnSetInCurrentUser() {
        return VpnUtils.isAlwaysOnVpnSet(mCm, MY_USER_ID);
        return VpnUtils.isAlwaysOnVpnSet(mVm, MY_USER_ID);
    }

    @Override
    public boolean isAlwaysOnVpnSetInManagedProfile() {
        final int managedProfileUserId = getManagedProfileUserId();
        return managedProfileUserId != UserHandle.USER_NULL &&
                VpnUtils.isAlwaysOnVpnSet(mCm, managedProfileUserId);
    }

    @Override
    public boolean isGlobalHttpProxySet() {
        return mCm.getGlobalProxy() != null;
                VpnUtils.isAlwaysOnVpnSet(mVm, managedProfileUserId);
    }

    @Override
+4 −5
Original line number Diff line number Diff line
@@ -14,26 +14,25 @@
package com.android.settings.enterprise;

import android.content.Context;
import android.net.ConnectivityManager;

import com.android.settings.core.PreferenceControllerMixin;
import com.android.settings.overlay.FeatureFactory;
import com.android.settingslib.core.AbstractPreferenceController;

public class GlobalHttpProxyPreferenceController extends AbstractPreferenceController implements
        PreferenceControllerMixin {

    private static final String KEY_GLOBAL_HTTP_PROXY = "global_http_proxy";
    private final EnterprisePrivacyFeatureProvider mFeatureProvider;
    private final ConnectivityManager mCm;

    public GlobalHttpProxyPreferenceController(Context context) {
        super(context);
        mFeatureProvider = FeatureFactory.getFactory(context)
                .getEnterprisePrivacyFeatureProvider(context);
        mCm = context.getSystemService(ConnectivityManager.class);
    }

    @Override
    public boolean isAvailable() {
        return mFeatureProvider.isGlobalHttpProxySet();
        return mCm.getGlobalProxy() != null;
    }

    @Override
+3 −1
Original line number Diff line number Diff line
@@ -20,6 +20,7 @@ import android.app.AppGlobals;
import android.app.admin.DevicePolicyManager;
import android.content.Context;
import android.net.ConnectivityManager;
import android.net.VpnManager;
import android.os.UserManager;

import androidx.annotation.Keep;
@@ -169,7 +170,8 @@ public class FeatureFactoryImpl extends FeatureFactory {
                            Context.DEVICE_POLICY_SERVICE),
                    appContext.getPackageManager(),
                    UserManager.get(appContext),
                    (ConnectivityManager) appContext.getSystemService(Context.CONNECTIVITY_SERVICE),
                    appContext.getSystemService(ConnectivityManager.class),
                    appContext.getSystemService(VpnManager.class),
                    appContext.getResources());
        }
        return mEnterprisePrivacyFeatureProvider;
+2 −5
Original line number Diff line number Diff line
@@ -20,7 +20,6 @@ import android.app.Dialog;
import android.app.settings.SettingsEnums;
import android.content.DialogInterface;
import android.content.pm.PackageInfo;
import android.net.ConnectivityManager;
import android.net.VpnManager;
import android.os.Bundle;
import android.os.UserHandle;
@@ -48,7 +47,6 @@ public class AppDialogFragment extends InstrumentedDialogFragment implements App
    private PackageInfo mPackageInfo;
    private Listener mListener;

    private ConnectivityManager mConnectivityManager;
    private UserManager mUserManager;
    private VpnManager mVpnManager;

@@ -93,7 +91,6 @@ public class AppDialogFragment extends InstrumentedDialogFragment implements App
    @Override
    public void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        mConnectivityManager = getContext().getSystemService(ConnectivityManager.class);
        mUserManager = UserManager.get(getContext());
        mVpnManager = getContext().getSystemService(VpnManager.class);
    }
@@ -158,8 +155,8 @@ public class AppDialogFragment extends InstrumentedDialogFragment implements App
        }
        final int userId = getUserId();
        if (mPackageInfo.packageName.equals(VpnUtils.getConnectedPackage(mVpnManager, userId))) {
            mConnectivityManager.setAlwaysOnVpnPackageForUser(userId, null,
                    /* lockdownEnabled */ false, /* lockdownAllowlist */ null);
            mVpnManager.setAlwaysOnVpnPackageForUser(userId, null, /* lockdownEnabled */ false,
                    /* lockdownAllowlist */ null);
            mVpnManager.prepareVpn(mPackageInfo.packageName, VpnConfig.LEGACY_VPN, userId);
        }
    }
Loading