summaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
authoritojun <>2002-05-18 00:06:42 +0000
committeritojun <>2002-05-18 00:06:42 +0000
commit2117eaece54016b776476220b41b97441e75b0e0 (patch)
tree40a1ae4cbc4fdd9583c733fe9a0a7cae865a49ec /src
parent85f43f972026558ed97587002d81edbffff2f1f0 (diff)
downloadopenbsd-2117eaece54016b776476220b41b97441e75b0e0.tar.gz
openbsd-2117eaece54016b776476220b41b97441e75b0e0.tar.bz2
openbsd-2117eaece54016b776476220b41b97441e75b0e0.zip
do not reverse-lookup scoped ipv6 address - it is meaningless as there's
no way to pass scope id. sync w/kame
Diffstat (limited to 'src')
-rw-r--r--src/lib/libc/net/gethostnamadr.c8
1 files changed, 7 insertions, 1 deletions
diff --git a/src/lib/libc/net/gethostnamadr.c b/src/lib/libc/net/gethostnamadr.c
index 9061caf0c2..a0bee88a6d 100644
--- a/src/lib/libc/net/gethostnamadr.c
+++ b/src/lib/libc/net/gethostnamadr.c
@@ -52,7 +52,7 @@
52 */ 52 */
53 53
54#if defined(LIBC_SCCS) && !defined(lint) 54#if defined(LIBC_SCCS) && !defined(lint)
55static char rcsid[] = "$OpenBSD: gethostnamadr.c,v 1.45 2002/02/17 19:42:23 millert Exp $"; 55static char rcsid[] = "$OpenBSD: gethostnamadr.c,v 1.46 2002/05/18 00:06:42 itojun Exp $";
56#endif /* LIBC_SCCS and not lint */ 56#endif /* LIBC_SCCS and not lint */
57 57
58#include <sys/param.h> 58#include <sys/param.h>
@@ -677,6 +677,12 @@ gethostbyaddr(addr, len, af)
677 } 677 }
678 678
679 if (af == AF_INET6 && len == IN6ADDRSZ && 679 if (af == AF_INET6 && len == IN6ADDRSZ &&
680 (IN6_IS_ADDR_LINKLOCAL((struct in6_addr *)uaddr) ||
681 IN6_IS_ADDR_SITELOCAL((struct in6_addr *)uaddr))) {
682 h_errno = HOST_NOT_FOUND;
683 return (NULL);
684 }
685 if (af == AF_INET6 && len == IN6ADDRSZ &&
680 (IN6_IS_ADDR_V4MAPPED((struct in6_addr *)uaddr) || 686 (IN6_IS_ADDR_V4MAPPED((struct in6_addr *)uaddr) ||
681 IN6_IS_ADDR_V4COMPAT((struct in6_addr *)uaddr))) { 687 IN6_IS_ADDR_V4COMPAT((struct in6_addr *)uaddr))) {
682 /* Unmap. */ 688 /* Unmap. */