patch-2.4.21 linux-2.4.21/net/ipv4/igmp.c
Next file: linux-2.4.21/net/ipv4/ip_fragment.c
Previous file: linux-2.4.21/net/ipv4/icmp.c
Back to the patch index
Back to the overall index
- Lines: 37
- Date:
2003-06-13 07:51:39.000000000 -0700
- Orig file:
linux-2.4.20/net/ipv4/igmp.c
- Orig date:
2002-11-28 15:53:15.000000000 -0800
diff -urN linux-2.4.20/net/ipv4/igmp.c linux-2.4.21/net/ipv4/igmp.c
@@ -258,30 +258,22 @@
{
struct ip_mc_list *im=(struct ip_mc_list *)data;
struct in_device *in_dev = im->interface;
- int err;
spin_lock(&im->lock);
im->tm_running=0;
- if (IGMP_V1_SEEN(in_dev))
- err = igmp_send_report(in_dev->dev, im->multiaddr, IGMP_HOST_MEMBERSHIP_REPORT);
- else
- err = igmp_send_report(in_dev->dev, im->multiaddr, IGMP_HOST_NEW_MEMBERSHIP_REPORT);
-
- /* Failed. Retry later. */
- if (err) {
- if (!in_dev->dead)
- igmp_start_timer(im, IGMP_Unsolicited_Report_Interval);
- goto out;
- }
-
if (im->unsolicit_count) {
im->unsolicit_count--;
igmp_start_timer(im, IGMP_Unsolicited_Report_Interval);
}
im->reporter = 1;
-out:
spin_unlock(&im->lock);
+
+ if (IGMP_V1_SEEN(in_dev))
+ igmp_send_report(in_dev->dev, im->multiaddr, IGMP_HOST_MEMBERSHIP_REPORT);
+ else
+ igmp_send_report(in_dev->dev, im->multiaddr, IGMP_HOST_NEW_MEMBERSHIP_REPORT);
+
ip_ma_put(im);
}
FUNET's LINUX-ADM group, linux-adm@nic.funet.fi
TCL-scripts by Sam Shen (who was at: slshen@lbl.gov)