diff options
author | itojun <> | 2002-05-18 00:06:42 +0000 |
---|---|---|
committer | itojun <> | 2002-05-18 00:06:42 +0000 |
commit | 2117eaece54016b776476220b41b97441e75b0e0 (patch) | |
tree | 40a1ae4cbc4fdd9583c733fe9a0a7cae865a49ec /src | |
parent | 85f43f972026558ed97587002d81edbffff2f1f0 (diff) | |
download | openbsd-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.c | 8 |
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) |
55 | static char rcsid[] = "$OpenBSD: gethostnamadr.c,v 1.45 2002/02/17 19:42:23 millert Exp $"; | 55 | static 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. */ |