summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorRobert Greenwalt <rgreenwalt@google.com>2011-03-26 08:58:01 -0700
committerAndroid (Google) Code Review <android-gerrit@google.com>2011-03-26 08:58:01 -0700
commit7544b23e52c004cda817874c54d88080b6e90bdc (patch)
tree5c033cd959fa80a2c6622f1c69e99dbe3f29c873
parent96cf34d362a1666683e813af915e4f6e0d1b38a0 (diff)
parentecc33d43e95b0c85c1550c3034e1df6992f46388 (diff)
downloadbase-7544b23e52c004cda817874c54d88080b6e90bdc.tar.gz
Merge "Fix Default route after secondary net use." into gingerbread
-rw-r--r--core/java/android/net/MobileDataStateTracker.java4
-rw-r--r--core/java/android/net/NetworkStateTracker.java1
2 files changed, 5 insertions, 0 deletions
diff --git a/core/java/android/net/MobileDataStateTracker.java b/core/java/android/net/MobileDataStateTracker.java
index b5596013c601..4d89df3b4299 100644
--- a/core/java/android/net/MobileDataStateTracker.java
+++ b/core/java/android/net/MobileDataStateTracker.java
@@ -246,6 +246,9 @@ public class MobileDataStateTracker extends NetworkStateTracker {
Log.d(TAG, "CONNECTED event did not supply interface name.");
}
mDefaultGatewayAddr = intent.getIntExtra(Phone.DATA_GATEWAY_KEY, 0);
+ if (mDefaultGatewayAddr == 0) {
+ Log.d(TAG, "CONNECTED event did not supply a default gateway.");
+ }
setDetailedState(DetailedState.CONNECTED, reason, apnName);
break;
}
@@ -384,6 +387,7 @@ public class MobileDataStateTracker extends NetworkStateTracker {
intent.putExtra(Phone.DATA_APN_KEY, mApnName);
intent.putExtra(Phone.DATA_IFACE_NAME_KEY, mInterfaceName);
intent.putExtra(Phone.NETWORK_UNAVAILABLE_KEY, false);
+ intent.putExtra(Phone.DATA_GATEWAY_KEY, mDefaultGatewayAddr);
if (mStateReceiver != null) mStateReceiver.onReceive(mContext, intent);
break;
case Phone.APN_REQUEST_STARTED:
diff --git a/core/java/android/net/NetworkStateTracker.java b/core/java/android/net/NetworkStateTracker.java
index 19986d149be6..aa3e922fcf2f 100644
--- a/core/java/android/net/NetworkStateTracker.java
+++ b/core/java/android/net/NetworkStateTracker.java
@@ -162,6 +162,7 @@ public abstract class NetworkStateTracker extends Handler {
Log.d(TAG, "addDefaultRoute for " + mNetworkInfo.getTypeName() +
" (" + mInterfaceName + "), GatewayAddr=" + mDefaultGatewayAddr);
}
+ NetworkUtils.addHostRoute(mInterfaceName, mDefaultGatewayAddr);
NetworkUtils.setDefaultRoute(mInterfaceName, mDefaultGatewayAddr);
}
}