ipv6: Remove IPV6_ADDR_RESERVED
Subsystems (3)
PATCH 1/1 ipv6: Remove IPV6_ADDR_RESERVED
RFC 4291 section 2.4 states that all uncategorized addresses should be considered as Global Unicast.
This will remove IPV6_ADDR_RESERVED completely and return IPV6_ADDR_UNICAST in ipv6_addr_type() instead.
Signed-off-by Ulrich Weber <[email protected]>
--- include/net/ipv6.h | 1 - net/ipv6/addrconf.c | 3 +-- net/ipv6/addrconf_core.c | 2 +- net/ipv6/route.c | 2 +- 4 files changed, 3 insertions(+), 5 deletions(-)
include/net/ipv6.h +0 -1
@@ -73,7 +73,6 @@#define IPV6_ADDR_SCOPE_MASK 0x00f0U#define IPV6_ADDR_MAPPED 0x1000U -#define IPV6_ADDR_RESERVED 0x2000U/* reserved address space */ /* * Addr scopes
net/ipv6/addrconf.c +1 -2
@@ -992,8 +992,7 @@ struct ipv6_saddr_dst {static inline int ipv6_saddr_preferred (int type) { -if (type & (IPV6_ADDR_MAPPED |IPV6_ADDR_COMPATv4| -IPV6_ADDR_LOOPBACK |IPV6_ADDR_RESERVED )) +if (type & (IPV6_ADDR_MAPPED |IPV6_ADDR_COMPATv4|IPV6_ADDR_LOOPBACK ))return 1 ;return 0 ; }
net/ipv6/addrconf_core.c +1 -1
@@ -72,7 +72,7 @@ int __ipv6_addr_type(const struct in6_addr *addr) IPV6_ADDR_SCOPE_TYPE(IPV6_ADDR_SCOPE_GLOBAL)); /* addr-select 3.3 */ } -return (IPV6_ADDR_RESERVED | +return (IPV6_ADDR_UNICAST |IPV6_ADDR_SCOPE_TYPE (IPV6_ADDR_SCOPE_GLOBAL ));/* addr-select 3.4 */ }EXPORT_SYMBOL (__ipv6_addr_type);
net/ipv6/route.c +1 -1
@@ -1873,7 +1873,7 @@ static int ip6_pkt_drop(struct sk_buff *skb, u8 code, int ipstats_mib_noroutes)switch (ipstats_mib_noroutes) {case IPSTATS_MIB_INNOROUTES : type =ipv6_addr_type (&ipv6_hdr (skb)->daddr); -if (type ==IPV6_ADDR_ANY || type ==IPV6_ADDR_RESERVED ) { +if (type ==IPV6_ADDR_ANY ) {IP6_INC_STATS (dev_net (dst->dev),ip6_dst_idev (dst),IPSTATS_MIB_INADDRERRORS );break ;
Signature · 1 line
1.6.3.3
From: Ulrich Weber <[email protected]>
Date: Fri, 26 Feb 2010 10:28:58 +0100
Quoted 7 lines
RFC 4291 section 2.4 states that all uncategorized addresses should be considered as Global Unicast.
This will remove
IPV6_ADDR_RESERVEDcompletely and returnIPV6_ADDR_UNICASTinipv6_addr_type()instead.Signed-off-by Ulrich Weber <[email protected]>
Applied.