diff options
| author | Rubin Xu <rubinxu@google.com> | 2017-09-07 13:04:28 +0000 |
|---|---|---|
| committer | android-build-merger <android-build-merger@google.com> | 2017-09-07 13:04:28 +0000 |
| commit | 1683efe4eca1bc6e9ebb9fe9b9997dc608354e9b (patch) | |
| tree | 8704eeac0f7b4cd08bdbaa1b66a524ac0dc09b91 /core/java/android | |
| parent | 5b730ba2a01ca0068952ebf7003367857d8bf2b6 (diff) | |
| parent | 90f104931a0782d8c92307cbee0db4741a574148 (diff) | |
Merge "Always add local subnet routes to the interface's routing table" am: 981228be38 am: 5fb26a1270 am: e3469a426e
am: 90f104931a
Change-Id: I704f9895ddd4c4fc2ab50a927939aee67a916fae
Diffstat (limited to 'core/java/android')
| -rw-r--r-- | core/java/android/net/LinkProperties.java | 18 |
1 files changed, 14 insertions, 4 deletions
diff --git a/core/java/android/net/LinkProperties.java b/core/java/android/net/LinkProperties.java index 1bb0fbb74a53..f527f77ddd7c 100644 --- a/core/java/android/net/LinkProperties.java +++ b/core/java/android/net/LinkProperties.java @@ -18,14 +18,13 @@ package android.net; import android.annotation.NonNull; import android.annotation.Nullable; -import android.net.ProxyInfo; -import android.os.Parcelable; import android.os.Parcel; +import android.os.Parcelable; import android.text.TextUtils; -import java.net.InetAddress; import java.net.Inet4Address; import java.net.Inet6Address; +import java.net.InetAddress; import java.net.UnknownHostException; import java.util.ArrayList; import java.util.Collection; @@ -504,11 +503,22 @@ public final class LinkProperties implements Parcelable { } /** + * Make sure this LinkProperties instance contains routes that cover the local subnet + * of its link addresses. Add any route that is missing. + * @hide + */ + public void ensureDirectlyConnectedRoutes() { + for (LinkAddress addr: mLinkAddresses) { + addRoute(new RouteInfo(addr, null, mIfaceName)); + } + } + + /** * Returns all the routes on this link and all the links stacked above it. * @hide */ public List<RouteInfo> getAllRoutes() { - List<RouteInfo> routes = new ArrayList(); + List<RouteInfo> routes = new ArrayList<>(); routes.addAll(mRoutes); for (LinkProperties stacked: mStackedLinks.values()) { routes.addAll(stacked.getAllRoutes()); |
