am 3016244f: Merge "Add new route.hasGateway() api" into jb-mr2-dev

* commit '3016244ffb0ee59a191b294839468a81b45a01f1':
  Add new route.hasGateway() api
This commit is contained in:
Robert Greenwalt
2013-04-12 12:07:14 -07:00
committed by Android Git Automerger
2 changed files with 8 additions and 2 deletions

View File

@@ -60,6 +60,7 @@ public class RouteInfo implements Parcelable {
private final boolean mIsDefault;
private final boolean mIsHost;
private final boolean mHasGateway;
/**
* Constructs a RouteInfo object.
@@ -97,6 +98,8 @@ public class RouteInfo implements Parcelable {
gateway = Inet6Address.ANY;
}
}
mHasGateway = (!gateway.isAnyLocalAddress());
mDestination = new LinkAddress(NetworkUtils.getNetworkPart(destination.getAddress(),
destination.getNetworkPrefixLength()), destination.getNetworkPrefixLength());
mGateway = gateway;
@@ -171,6 +174,10 @@ public class RouteInfo implements Parcelable {
return mIsHost;
}
public boolean hasGateway() {
return mHasGateway;
}
public String toString() {
String val = "";
if (mDestination != null) val = mDestination.toString();

View File

@@ -1470,8 +1470,7 @@ public class ConnectivityService extends IConnectivityManager.Stub {
loge("Error modifying route - no interface name");
return false;
}
if (r.isHostRoute() == false) {
if (r.hasGateway()) {
RouteInfo bestRoute = RouteInfo.selectBestRoute(lp.getAllRoutes(), r.getGateway());
if (bestRoute != null) {
if (bestRoute.getGateway().equals(r.getGateway())) {