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

Commit 66a09d0a authored by Robert Greenwalt's avatar Robert Greenwalt Committed by Android Git Automerger
Browse files

am 618377d8: Merge "resolved conflicts for merge of 55b53d35 to...

am 618377d8: Merge "resolved conflicts for merge of 55b53d35 to honeycomb-plus-aosp" into honeycomb-plus-aosp

* commit '618377d8':
  Don't accept a user-defined dun-capable connection
parents d96d1be7 618377d8
Loading
Loading
Loading
Loading
+19 −0
Original line number Diff line number Diff line
@@ -38,6 +38,8 @@ import android.provider.Settings.SettingNotFoundException;
import android.text.TextUtils;
import android.util.Log;

import com.android.internal.R;

import java.util.ArrayList;
import java.util.HashMap;
import java.util.concurrent.atomic.AtomicInteger;
@@ -353,9 +355,26 @@ public abstract class DataConnectionTracker extends Handler {

    public boolean isApnTypeActive(String type) {
        // TODO: support simultaneous with List instead
        if (Phone.APN_TYPE_DUN.equals(type)) {
            ApnSetting dunApn = fetchDunApn();
            if (dunApn != null) {
                return ((mActiveApn != null) && (dunApn.toString().equals(mActiveApn.toString())));
            }
        }
        return mActiveApn != null && mActiveApn.canHandleType(type);
    }

    protected ApnSetting fetchDunApn() {
        Context c = mPhone.getContext();
        String apnData = Settings.Secure.getString(c.getContentResolver(),
                Settings.Secure.TETHER_DUN_APN);
        ApnSetting dunSetting = ApnSetting.fromString(apnData);
        if (dunSetting != null) return dunSetting;

        apnData = c.getResources().getString(R.string.config_tether_apndata);
        return ApnSetting.fromString(apnData);
    }

    public String[] getActiveApnTypes() {
        String[] result;
        if (mActiveApn != null) {
+0 −11
Original line number Diff line number Diff line
@@ -1688,17 +1688,6 @@ public final class GsmDataConnectionTracker extends DataConnectionTracker {
        }
    }

    private ApnSetting fetchDunApn() {
        Context c = mPhone.getContext();
        String apnData = Settings.Secure.getString(c.getContentResolver(),
                                    Settings.Secure.TETHER_DUN_APN);
        ApnSetting dunSetting = ApnSetting.fromString(apnData);
        if (dunSetting != null) return dunSetting;

        apnData = c.getResources().getString(R.string.config_tether_apndata);
        return ApnSetting.fromString(apnData);
    }

    /**
     * Build a list of APNs to be used to create PDP's.
     *