netdev
[Top] [All Lists]

Re: Broken? 2.6.6 + IP_ADD_SOURCE_MEMBERSHIP + SO_REUSEADDR

To: terpstra@xxxxxxxxxxxxxxxxxxxx
Subject: Re: Broken? 2.6.6 + IP_ADD_SOURCE_MEMBERSHIP + SO_REUSEADDR
From: YOSHIFUJI Hideaki / 吉藤英明 <yoshfuji@xxxxxxxxxxxxxx>
Date: Sat, 05 Jun 2004 01:55:44 +0900 (JST)
Cc: linux-kernel@xxxxxxxxxxxxxxx, netdev@xxxxxxxxxxx, davem@xxxxxxxxxx, yoshfuji@xxxxxxxxxxxxxx
In-reply-to: <20040604155423.GA5656@muffin>
Organization: USAGI Project
References: <20040604155423.GA5656@muffin>
Sender: netdev-bounce@xxxxxxxxxxx
In article <20040604155423.GA5656@muffin> (at Fri, 4 Jun 2004 17:54:23 +0200), 
"Wesley W. Terpstra" <terpstra@xxxxxxxxxxxxxxxxxxxx> says:

> If I launch the same program twice with different senders, the first program
> ceases to receive multicast packets. (Neither from its own sender, nor the
> second program's sender) The second program receives packets from its
> designated sender only (as expected).
:
> If both programs specify the same sender, then both programs receive the
> message (as expected).

Thanks for the report.
The following patch should fix the issue. Please try.
Thanks again.

===== net/ipv4/udp.c 1.60 vs edited =====
--- 1.60/net/ipv4/udp.c 2004-05-31 03:57:26 +09:00
+++ edited/net/ipv4/udp.c       2004-06-05 01:47:07 +09:00
@@ -294,7 +294,7 @@
                    ipv6_only_sock(s)                                   ||
                    (s->sk_bound_dev_if && s->sk_bound_dev_if != dif))
                        continue;
-               if (!ip_mc_sf_allow(sk, loc_addr, rmt_addr, dif))
+               if (!ip_mc_sf_allow(s, loc_addr, rmt_addr, dif))
                        continue;
                goto found;
        }

-- 
Hideaki YOSHIFUJI @ USAGI Project <yoshfuji@xxxxxxxxxxxxxx>
GPG FP: 9022 65EB 1ECF 3AD1 0BDF  80D8 4807 F894 E062 0EEA

<Prev in Thread] Current Thread [Next in Thread>