diff options
| author | Yoshinobu Inoue <shin@FreeBSD.org> | 2000-01-13 05:37:51 +0000 |
|---|---|---|
| committer | Yoshinobu Inoue <shin@FreeBSD.org> | 2000-01-13 05:37:51 +0000 |
| commit | 3a0c1bfb5d1db1183eb77a8764382ed081fc1b71 (patch) | |
| tree | f592b9cc85495bc6f999a4706ce063c5ac8c5393 /lib/libc | |
| parent | 8972cdb14ee9ab7aa4d90d52c7f68bc12d9f875a (diff) | |
Notes
Diffstat (limited to 'lib/libc')
| -rw-r--r-- | lib/libc/net/getaddrinfo.c | 5 |
1 files changed, 4 insertions, 1 deletions
diff --git a/lib/libc/net/getaddrinfo.c b/lib/libc/net/getaddrinfo.c index 3a415dda5011..17824f5e2f7f 100644 --- a/lib/libc/net/getaddrinfo.c +++ b/lib/libc/net/getaddrinfo.c @@ -813,7 +813,10 @@ get_name(addr, afd, res, numaddr, pai, servname) hp = getipnodebyaddr(addr, afd->a_addrlen, afd->a_af, &h_error); if (hp && hp->h_name && hp->h_name[0] && hp->h_addr_list[0]) { - GET_AI(cur, afd, hp->h_addr_list[0]); + if (hp->h_addrtype == afd->a_af) + GET_AI(cur, afd, hp->h_addr_list[0]); + else /* IPv4 mapped IPv6 addr case */ + GET_AI(cur, afd, numaddr); GET_PORT(cur, servname); GET_CANONNAME(cur, hp->h_name); } else { |
