Re: [PATCH] Disable router anycast address for /127 prefixes
From: Brian Haley <hidden>
Date: 2011-07-01 19:17:05
On 07/01/2011 02:26 PM, Bjørn Mork wrote:
Brian Haley [off-list ref] writes:quoted
On 07/01/2011 07:22 AM, Bjørn Mork wrote:quoted
RFC 6164 requires that routers MUST disable Subnet-Router anycast for the prefix when /127 prefixes are used. Signed-off-by: Bjørn Mork <bjorn@mork.no> ---quoted
@@ -1479,6 +1481,8 @@ static void addrconf_join_anycast(struct inet6_ifaddr *ifp) static void addrconf_leave_anycast(struct inet6_ifaddr *ifp) { struct in6_addr addr; + if (ifp->prefix_len == 127) /* RFC 6164 */ + return; ipv6_addr_prefix(&addr, &ifp->addr, ifp->prefix_len); if (ipv6_addr_any(&addr)) return;I'm not sure you'd need this part as there shouldn't be a /127 in the list to remove.I don't understand exactly what you mean here....
If you never add an anycast address when the prefix length is 127, the address wouldn't be there when you went to remove it. In other words, the call to __ipv6_dev_ac_dec() would return -ENOENT, which is ignored anyways. It's not a common codepath so the two lines of code wouldn't hurt anything I guess... -Brian