Add negotiated DNS servers to VPN config am: 8b9538df8f am: d210205442

Change-Id: I3bc9ed863f73440d3776c1594d723024a84231e7
This commit is contained in:
Benedict Wong
2020-03-31 17:36:46 +00:00
committed by Automerger Merge Worker

View File

@@ -2248,12 +2248,16 @@ public class Vpn {
final String interfaceName = mTunnelIface.getInterfaceName(); final String interfaceName = mTunnelIface.getInterfaceName();
final int maxMtu = mProfile.getMaxMtu(); final int maxMtu = mProfile.getMaxMtu();
final List<LinkAddress> internalAddresses = childConfig.getInternalAddresses(); final List<LinkAddress> internalAddresses = childConfig.getInternalAddresses();
final List<String> dnsAddrStrings = new ArrayList<>();
final Collection<RouteInfo> newRoutes = VpnIkev2Utils.getRoutesFromTrafficSelectors( final Collection<RouteInfo> newRoutes = VpnIkev2Utils.getRoutesFromTrafficSelectors(
childConfig.getOutboundTrafficSelectors()); childConfig.getOutboundTrafficSelectors());
for (final LinkAddress address : internalAddresses) { for (final LinkAddress address : internalAddresses) {
mTunnelIface.addAddress(address.getAddress(), address.getPrefixLength()); mTunnelIface.addAddress(address.getAddress(), address.getPrefixLength());
} }
for (InetAddress addr : childConfig.getInternalDnsServers()) {
dnsAddrStrings.add(addr.getHostAddress());
}
final NetworkAgent networkAgent; final NetworkAgent networkAgent;
final LinkProperties lp; final LinkProperties lp;
@@ -2269,7 +2273,9 @@ public class Vpn {
mConfig.routes.clear(); mConfig.routes.clear();
mConfig.routes.addAll(newRoutes); mConfig.routes.addAll(newRoutes);
// TODO: Add DNS servers from negotiation if (mConfig.dnsServers == null) mConfig.dnsServers = new ArrayList<>();
mConfig.dnsServers.clear();
mConfig.dnsServers.addAll(dnsAddrStrings);
networkAgent = mNetworkAgent; networkAgent = mNetworkAgent;