On Fri, Jul 22, 2005 at 08:12:58PM -0400, YOSHIFUJI Hideaki / ?$B5HF#1QL@ wrote:
> In article <[EMAIL PROTECTED]> (at Thu, 21 Jul 2005 21:44:43 +0100), Andrew 
> McDonald <[EMAIL PROTECTED]> says:
> 
> > I guess the fix would be a matter of changing:
> > 
> > if (sk && ra->sel == sel) {
> > 
> > to:
> > 
> > if (sk && ra->sel == sel &&
> >     (!sk->sk_bound_dev_if ||
> >      sk->sk_bound_dev_if == skb->dev->ifindex)) {
> 
> I agree. Would you make a patch for this, please?

Having looked a bit further, it appears that the sk_bound_dev_if check
isn't being performed in the general IPv6 raw socket reception case
either. (See __raw_v6_lookup() vs __raw_v4_lookup().)

TCP/UDP sockets look like they take care of interface binding
correctly.

I'll try to produce a combined patch fixing both the general IPv6 raw
socket and router alert special case for you to review.

thanks,
Andrew
-- 
Andrew McDonald
E-mail: [EMAIL PROTECTED]
http://www.mcdonald.org.uk/andrew/
-
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