• C
    NFS: handle interface identifiers in incoming IPv6 addresses · d8e7748a
    Chuck Lever 提交于
    Add support in the kernel NFS client's address parser for interface
    identifiers.
    
    IPv6 link-local addresses require an additional "interface identifier",
    which is a network device name or an integer that indexes the array of
    local network interfaces.  They are suffixed to the address with a '%'.
    For example:
    
    	fe80::215:c5ff:fe3b:e1b2%2
    
    indicates an interface index of 2.  Or
    
    	fe80::215:c5ff:fe3b:e1b2%eth0
    
    indicates that requests should be routed through the eth0 device.
    Without the interface ID, link-local addresses are not usable for NFS.
    
    Both the kernel NFS client mount option parser and the mount.nfs command
    can take either form.  The mount.nfs command always passes the address
    through getnameinfo(3), which usually re-writes interface indices as
    device names.
    Signed-off-by: NChuck Lever <chuck.lever@oracle.com>
    Signed-off-by: NTrond Myklebust <Trond.Myklebust@netapp.com>
    d8e7748a
super.c 61.0 KB