support draft-ietf-ipngwg-icmp-name-lookups-05.txt, drop support for
draft-ietf-ipngwg-icmp-name-lookups-04.txt. There are certain bitfield change in 04 draft to 05 draft, which makes 04 "ping6 -a" and 05 "ping6 -a" not interoperable. sigh.
This commit is contained in:
parent
833abddadd
commit
cdea88d700
|
@ -1,5 +1,5 @@
|
|||
/* $NetBSD: icmp6.h,v 1.6 2000/02/28 12:08:21 itojun Exp $ */
|
||||
/* $KAME: icmp6.h,v 1.6 2000/02/24 16:34:46 itojun Exp $ */
|
||||
/* $NetBSD: icmp6.h,v 1.7 2000/02/28 13:48:50 itojun Exp $ */
|
||||
/* $KAME: icmp6.h,v 1.8 2000/02/28 10:59:30 itojun Exp $ */
|
||||
|
||||
/*
|
||||
* Copyright (C) 1995, 1996, 1997, and 1998 WIDE Project.
|
||||
|
@ -323,6 +323,13 @@ struct icmp6_nodeinfo {
|
|||
#if BYTE_ORDER == BIG_ENDIAN
|
||||
#define NI_SUPTYPE_FLAG_COMPRESS 0x1
|
||||
#define NI_FQDN_FLAG_VALIDTTL 0x1
|
||||
#elif BYTE_ORDER == LITTLE_ENDIAN
|
||||
#define NI_SUPTYPE_FLAG_COMPRESS 0x0100
|
||||
#define NI_FQDN_FLAG_VALIDTTL 0x0100
|
||||
#endif
|
||||
|
||||
#ifdef NAME_LOOKUPS_04
|
||||
#if BYTE_ORDER == BIG_ENDIAN
|
||||
#define NI_NODEADDR_FLAG_LINKLOCAL 0x1
|
||||
#define NI_NODEADDR_FLAG_SITELOCAL 0x2
|
||||
#define NI_NODEADDR_FLAG_GLOBAL 0x4
|
||||
|
@ -330,8 +337,6 @@ struct icmp6_nodeinfo {
|
|||
#define NI_NODEADDR_FLAG_TRUNCATE 0x10
|
||||
#define NI_NODEADDR_FLAG_ANYCAST 0x20 /* just experimental. not in spec */
|
||||
#elif BYTE_ORDER == LITTLE_ENDIAN
|
||||
#define NI_SUPTYPE_FLAG_COMPRESS 0x0100
|
||||
#define NI_FQDN_FLAG_VALIDTTL 0x0100
|
||||
#define NI_NODEADDR_FLAG_LINKLOCAL 0x0100
|
||||
#define NI_NODEADDR_FLAG_SITELOCAL 0x0200
|
||||
#define NI_NODEADDR_FLAG_GLOBAL 0x0400
|
||||
|
@ -339,6 +344,25 @@ struct icmp6_nodeinfo {
|
|||
#define NI_NODEADDR_FLAG_TRUNCATE 0x1000
|
||||
#define NI_NODEADDR_FLAG_ANYCAST 0x2000 /* just experimental. not in spec */
|
||||
#endif
|
||||
#else /* draft-ietf-ipngwg-icmp-name-lookups-05 (and later?) */
|
||||
#if BYTE_ORDER == BIG_ENDIAN
|
||||
#define NI_NODEADDR_FLAG_TRUNCATE 0x1
|
||||
#define NI_NODEADDR_FLAG_ALL 0x2
|
||||
#define NI_NODEADDR_FLAG_COMPAT 0x4
|
||||
#define NI_NODEADDR_FLAG_LINKLOCAL 0x8
|
||||
#define NI_NODEADDR_FLAG_SITELOCAL 0x10
|
||||
#define NI_NODEADDR_FLAG_GLOBAL 0x20
|
||||
#define NI_NODEADDR_FLAG_ANYCAST 0x40 /* just experimental. not in spec */
|
||||
#elif BYTE_ORDER == LITTLE_ENDIAN
|
||||
#define NI_NODEADDR_FLAG_TRUNCATE 0x0100
|
||||
#define NI_NODEADDR_FLAG_ALL 0x0200
|
||||
#define NI_NODEADDR_FLAG_COMPAT 0x0400
|
||||
#define NI_NODEADDR_FLAG_LINKLOCAL 0x0800
|
||||
#define NI_NODEADDR_FLAG_SITELOCAL 0x1000
|
||||
#define NI_NODEADDR_FLAG_GLOBAL 0x2000
|
||||
#define NI_NODEADDR_FLAG_ANYCAST 0x4000 /* just experimental. not in spec */
|
||||
#endif
|
||||
#endif
|
||||
|
||||
struct ni_reply_fqdn {
|
||||
u_int32_t ni_fqdn_ttl; /* TTL */
|
||||
|
|
|
@ -1,4 +1,4 @@
|
|||
$NetBSD: IMPLEMENTATION,v 1.9 2000/02/26 08:49:49 itojun Exp $
|
||||
$NetBSD: IMPLEMENTATION,v 1.10 2000/02/28 13:48:51 itojun Exp $
|
||||
|
||||
# NOTE: this is from original KAME distribution.
|
||||
# Some portion of this document is not applicable to the code merged into
|
||||
|
@ -92,8 +92,7 @@ RFC2732: Format for Literal IPv6 Addresses in URL's
|
|||
* The spec is implemented in programs that handle URLs
|
||||
(like freebsd ftpio(3) and fetch(1), or netbsd ftp(1))
|
||||
draft-ietf-ipngwg-router-renum-08: Router renumbering for IPv6
|
||||
draft-ietf-ipngwg-icmp-namelookups-02: IPv6 Name Lookups Through ICMP
|
||||
draft-ietf-ipngwg-icmp-name-lookups-03: IPv6 Name Lookups Through ICMP
|
||||
draft-ietf-ipngwg-icmp-name-lookups-05: IPv6 Name Lookups Through ICMP
|
||||
draft-ietf-pim-ipv6-01.txt: PIM for IPv6
|
||||
* pim6dd implements dense mode. pim6sd implements sparse mode.
|
||||
draft-ietf-dhc-dhcpv6-14.txt: DHCPv6
|
||||
|
|
|
@ -1,5 +1,5 @@
|
|||
/* $NetBSD: icmp6.c,v 1.23 2000/02/26 08:39:19 itojun Exp $ */
|
||||
/* $KAME: icmp6.c,v 1.70 2000/02/26 07:01:11 itojun Exp $ */
|
||||
/* $NetBSD: icmp6.c,v 1.24 2000/02/28 13:48:51 itojun Exp $ */
|
||||
/* $KAME: icmp6.c,v 1.71 2000/02/28 09:25:42 jinmei Exp $ */
|
||||
|
||||
/*
|
||||
* Copyright (C) 1995, 1996, 1997, and 1998 WIDE Project.
|
||||
|
@ -1188,6 +1188,16 @@ ni6_addrs(ni6, m, ifpp)
|
|||
&ifa6->ia_addr.sin6_addr))
|
||||
iffound = 1;
|
||||
|
||||
/*
|
||||
* IPv4-mapped addresses can only be returned by a
|
||||
* Node Information proxy, since they represent
|
||||
* addresses of IPv4-only nodes, which perforce do
|
||||
* not implement this protocol.
|
||||
* [icmp-name-lookups-05]
|
||||
* So we don't support NI_NODEADDR_FLAG_COMPAT in
|
||||
* this function at this moment.
|
||||
*/
|
||||
|
||||
if (ifa6->ia6_flags & IN6_IFF_ANYCAST)
|
||||
continue; /* we need only unicast addresses */
|
||||
|
||||
|
|
Loading…
Reference in New Issue