From: David L Stevens Date: Wed, 18 Jan 2006 22:20:56 +0000 (-0800) Subject: [IPV4]: Fix multiple bugs in IGMPv3 X-Git-Tag: v2.6.16-rc2~354^2~3 X-Git-Url: http://git.openpandora.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=ad12583f46bcb6ce93ccd99fa063c0d701146b2e;p=pandora-kernel.git [IPV4]: Fix multiple bugs in IGMPv3 1) fix "mld_marksources()" to a) send nothing when all queried sources are excluded b) send full exclude report when source queried sources are not excluded c) don't schedule a timer when there's nothing to report 2) fix "add_grec()" to send empty-source records when it should The original check doesn't account for a non-empty source list with all sources inactive; the new code keeps that short-circuit case, and also generates the group header with an empty list if needed. 3) fix mca_crcount decrement to be after add_grec(), which needs its original value 4) add/remove delete records and prevent current advertisements when an exclude-mode filter moves from "active" to "inactive" or vice versa based on new filter additions. Items 1-3 are just IPv4 versions of the IPv6 bugs found by Yan Zheng and fixed earlier. Item #4 is a related bug that affects exclude-mode change records only (but not queries) and also occurs in IPv6 (IPv6 version coming soon). Signed-off-by: David L Stevens Signed-off-by: David S. Miller --- Reading git-diff-tree failed