• Hugo Benichi's avatar
    arc: net: update net.mojom's NetworkConfiguration · 4e626508
    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: default avatarJorge Lucangeli Obes <jorgelo@chromium.org>
    Commit-Queue: Hugo Benichi <hugobenichi@google.com>
    Cr-Commit-Position: refs/heads/master@{#739163}
    4e626508
net.mojom 15.7 KB