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

* commit '618377d83d4a280c2e0f89642bfb1046d387ad7d':
  Don't accept a user-defined dun-capable connection
This commit is contained in:
Robert Greenwalt
2011-03-11 15:17:44 -08:00
committed by Android Git Automerger
2 changed files with 19 additions and 11 deletions

View File

@@ -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) {

View File

@@ -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.
*