-
Hugo Benichi authored
This patch adds a number of fields to NetworkConfiguration objects defined in net.mojom in order to pass to ARC information it currently lacks or infers from the environment: - Explictly passing the host IPv4 configuration and DNS addresses: this effectively replaces the ip_configs field which is both incovenient to parse on ARC side and not necessary for IPv6 outside of DNS. Instead it is more straightforward and easier on both sides to directly pass the IPv4 configuration and IPv4 + IPv6 DNS settings. This matches better with the interface of android.net.LinkProperties. - List of DNS search domains: similarly to DNS addresses, ARC should use the settings set for the host during layer3 provisioning or set statically. This is important for managed networks and necessary for resolving "short" hostnames inside ARC. Like DNS addresses, search domains are aggregated over both v4 and v6 and passed as an explicit array. - Static IPv4 configuration for ARC: this replaces the legacy mechanism of arc-networkd setting the IPv4 address assigned to an Android virtual network by directly entering the ARC container namespace and setting the address on Android virtual interface. This is necessary for using ARC's ArcNetworkService in ARCVM where ns-enter cannot be used. - MTU value: ARC currently does not set the MTU correctly for network with non-standard MTUs (like some cellular networks) and always use a default MTU value. Follow-up patches will start populating these fields. BUG=b:123431422 BUG=b:143258259 BUG=b:145960788 BUG=crbug:795603 TEST=Compiled Change-Id: I08dfd5daa9ba2946a847e555bb94a01da3866eb9 Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/1959203Reviewed-by:
Jorge Lucangeli Obes <jorgelo@chromium.org> Commit-Queue: Hugo Benichi <hugobenichi@google.com> Cr-Commit-Position: refs/heads/master@{#739163}
4e626508