*len = 32;
host_dns(const char *s, u_int8_t *len){	struct addrinfo		 hints, *res0, *res;	int			 error;	struct sockaddr_in	*sa_in;	struct sockaddr_in6	*sa_in6;	struct ntp_addr		*h, *hh = NULL;	memset(&hints, 0, sizeof(hints));	hints.ai_family = PF_UNSPEC;	hints.ai_socktype = SOCK_STREAM; /* DUMMY */	error = getaddrinfo(s, NULL, &hints, &res0);	if (error)		return (NULL);	for (res = res0; res; res = res->ai_next) {		if (res->ai_family != AF_INET &&		    res->ai_family != AF_INET6)			continue;		if ((h = calloc(1, sizeof(struct ntp_addr))) == NULL)			fatal(NULL);		h->ss.ss_family = res->ai_family;		if (res->ai_family == AF_INET) {			sa_in = (struct sockaddr_in *)&h->ss;			sa_in->sin_len = sizeof(struct sockaddr_in);			sa_in->sin_addr.s_addr = ((struct sockaddr_in *)			    res->ai_addr)->sin_addr.s_addr;			*len = 32;		} else {			sa_in6 = (struct sockaddr_in6 *)&h->ss;			sa_in6->sin6_len = sizeof(struct sockaddr_in6);			memcpy(&sa_in6->sin6_addr, &((struct sockaddr_in6 *)			    res->ai_addr)->sin6_addr, sizeof(struct in6_addr));			*len = 128;		}		h->next = hh;		hh = h;	}	freeaddrinfo(res0);	return (hh);}