dns_ip6 looks up 16-byte IPv6 addresses for the fully-qualified domain name in
fqdn. It puts the concatenation of the IPv6 addresses into out and
returns 0. If the domain does not exist in DNS, or has no IP addresses,
out will be empty.
dns_ip6 also looks up 4-byte IPv4 addresses and converts them into
IPv4-mapped IPv6 addresses (::ffff:184.108.40.206) to provide easy backwards
compatibility for IPv6 applications.
If dns_ip6 has trouble with the DNS lookup or runs out of memory, it returns
-1, setting errno appropriately. It may or may not change out.
If fqdn is an IPv6 address, dns_ip6 puts that IP address into
out without checking DNS. IPv4 addresses are also used directly
without DNS lookup.