func checkLocalIPv6Addresses()

in dp_check/dp_check.go [262:272]


func checkLocalIPv6Addresses(ipv6FromMetadataServer *net.IP) (*net.Interface, error) {
	if ipv6FromMetadataServer == nil {
		return nil, fmt.Errorf("skipping search for DirectPath-capable IPv6 address because the VM failed to get a valid IPv6 address from metadata server")
	}
	var err error
	var iface *net.Interface
	if iface, err = findLocalAddress(func(ip net.IP) bool { return ip.To4() == nil && ip.Equal(*ipv6FromMetadataServer) }, skipLoopback); err != nil {
		return nil, fmt.Errorf("failed to find local DirectPath-capable IPv6 address: %v. This VM was expected to have a network interface with IPv6 address: %s assigned to it, but no such interface was found, it's likely that IPv6 DHCP setup either failed or hasn't been attempted", err, ipv6FromMetadataServer)
	}
	return iface, nil
}