esac
AC_CHECK_FUNCS(hstrerror)
AC_CHECK_FUNC(inet_ntop, [], [AC_DEFINE(ISC_PLATFORM_NEEDNTOP, 1, [ISC: provide inet_ntop()])])
+AC_CHECK_FUNC(inet_pton, [], [AC_DEFINE(ISC_PLATFORM_NEEDPTON, 1, [ISC: provide inet_pton()])])
+AC_CHECK_FUNC(inet_aton, [], [AC_DEFINE(ISC_PLATFORM_NEEDATON, 1, [ISC: provide inet_aton()])])
AC_CHECK_FUNCS(K_open kvm_open memcpy memmove memset)
case "$host" in
*-*-sco3.2v5.0.*)
}
ai->ai_addrlen = sizeof(struct sockaddr_storage);
sockin = (struct sockaddr_in *)ai->ai_addr;
- sockin->sin_family = ai->ai_family;
+ sockin->sin_family = (short) ai->ai_family;
sockin->sin_addr.s_addr = htonl(INADDR_ANY);
#ifdef HAVE_SA_LEN_IN_STRUCT_SOCKADDR
ai->ai_addr->sa_len = SOCKLEN(ai->ai_addr);
freeaddrinfo(ai);
return (EAI_SERVICE);
}
- memcpy(ai->ai_addr->sa_data, &ntpport, sizeof(short));
+ /*
+ * Set up the port number
+ */
+ if (ai->ai_family == AF_INET)
+ ((struct sockaddr_in *)ai->ai_addr)->sin_port = ntpport;
+ else if (ai->ai_family == AF_INET6)
+ ((struct sockaddr_in6 *)ai->ai_addr)->sin6_port = ntpport;
}
*res = ai;
return (0);
struct sockaddr_storage saddr;
int saddrlen;
u_int32 amask, imask;
- u_int32 laddr, iaddr, maddr;
/*
* If there is only one outgoing interface we already know the interface
- *
+ */
if (addr->ss_family == AF_INET && outifaceipv4 != -1) {
return (&inter_list[outifaceipv4]);
}