From: Brian Haley <[EMAIL PROTECTED]>
Date: Wed, 03 Oct 2007 10:44:17 -0400

> When the ICMPv6 Target address is multicast, Linux processes the 
> redirect instead of dropping it.  The problem is in this code in 
> ndisc_redirect_rcv():
> 
>          if (ipv6_addr_equal(dest, target)) {
>                  on_link = 1;
>          } else if (!(ipv6_addr_type(target) & IPV6_ADDR_LINKLOCAL)) {
>                  ND_PRINTK2(KERN_WARNING
>                             "ICMPv6 Redirect: target address is not 
> link-local.\n");
>                  return;
>          }
> 
> This second check will succeed if the Target address is, for example, 
> FF02::1 because it has link-local scope.  Instead, it should be checking 
> if it's a unicast link-local address, as stated in RFC 2461/4861 Section 
> 8.1:
> 
>        - The ICMP Target Address is either a link-local address (when
>          redirected to a router) or the same as the ICMP Destination
>          Address (when redirected to the on-link destination).
> 
> I know this doesn't explicitly say unicast link-local address, but it's 
> implied.
> 
> This bug is preventing Linux kernels from achieving IPv6 Logo Phase II 
> certification because of a recent error that was found in the TAHI test 
> suite - Neighbor Disovery suite test 206 (v6LC.2.3.6_G) had the 
> multicast address in the Destination field instead of Target field, so 
> we were passing the test.  This won't be the case anymore.
> 
> The patch below fixes this problem, and also fixes ndisc_send_redirect() 
> to not send an invalid redirect with a multicast address in the Target 
> field.  I re-ran the TAHI Neighbor Discovery section to make sure Linux 
> passes all 245 tests now.
> 
> Signed-off-by: Brian Haley <[EMAIL PROTECTED]>
> Acked-by: David L Stevens <[EMAIL PROTECTED]>

I believe everyone's concerns have been addressed in this
version of the patch, so I have applied it to net-2.6

Thanks everyone!
-
To unsubscribe from this list: send the line "unsubscribe netdev" in
the body of a message to [EMAIL PROTECTED]
More majordomo info at  http://vger.kernel.org/majordomo-info.html

Reply via email to