Changeset View
Changeset View
Standalone View
Standalone View
head/lib/libc/net/getnameinfo.c
Show First 20 Lines • Show All 218 Lines • ▼ Show 20 Lines | if (sp) { | ||||
strlcpy(serv, numserv, servlen); | strlcpy(serv, numserv, servlen); | ||||
} | } | ||||
} | } | ||||
switch (sa->sa_family) { | switch (sa->sa_family) { | ||||
case AF_INET: | case AF_INET: | ||||
v4a = (u_int32_t) | v4a = (u_int32_t) | ||||
ntohl(((const struct sockaddr_in *)sa)->sin_addr.s_addr); | ntohl(((const struct sockaddr_in *)sa)->sin_addr.s_addr); | ||||
if (IN_MULTICAST(v4a) || IN_EXPERIMENTAL(v4a)) | if (IN_MULTICAST(v4a) || IN_EXPERIMENTAL(v4a) || | ||||
flags |= NI_NUMERICHOST; | IN_ZERONET(v4a)) | ||||
v4a >>= IN_CLASSA_NSHIFT; | |||||
if (v4a == 0) | |||||
flags |= NI_NUMERICHOST; | flags |= NI_NUMERICHOST; | ||||
break; | break; | ||||
#ifdef INET6 | #ifdef INET6 | ||||
case AF_INET6: | case AF_INET6: | ||||
{ | { | ||||
const struct sockaddr_in6 *sin6; | const struct sockaddr_in6 *sin6; | ||||
sin6 = (const struct sockaddr_in6 *)sa; | sin6 = (const struct sockaddr_in6 *)sa; | ||||
switch (sin6->sin6_addr.s6_addr[0]) { | switch (sin6->sin6_addr.s6_addr[0]) { | ||||
▲ Show 20 Lines • Show All 301 Lines • Show Last 20 Lines |