From 1b60d11b8f54f1ade45b80668601bc955041cf4f Mon Sep 17 00:00:00 2001 From: Lorenzo Colitti Date: Thu, 2 Jul 2015 13:03:03 +0900 Subject: [PATCH] Make the VPN notice connectivity changes on stacked interfaces. Currently, the VPN code only looks at base interfaces, so if 464xlat is in use, it will never disconnect when its underlying network has disconnected. Use getAllInterfaceNames().contains() instead of just comparing the base interface name. Bug: 19336810 Change-Id: Id1ba2c80a09cec5098c6f512acdc0a05a939e9f3 --- services/core/java/com/android/server/connectivity/Vpn.java | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/services/core/java/com/android/server/connectivity/Vpn.java b/services/core/java/com/android/server/connectivity/Vpn.java index e1ec8a636e725..2846185154871 100644 --- a/services/core/java/com/android/server/connectivity/Vpn.java +++ b/services/core/java/com/android/server/connectivity/Vpn.java @@ -1135,7 +1135,7 @@ public class Vpn { final ConnectivityManager cm = ConnectivityManager.from(mContext); for (Network network : cm.getAllNetworks()) { final LinkProperties lp = cm.getLinkProperties(network); - if (lp != null && mOuterInterface.equals(lp.getInterfaceName())) { + if (lp != null && lp.getAllInterfaceNames().contains(mOuterInterface)) { final NetworkInfo networkInfo = cm.getNetworkInfo(network); if (networkInfo != null) mOuterConnection.set(networkInfo.getType()); }