diff options
author | David L Stevens <dlstevens@us.ibm.com> | 2006-01-18 14:20:56 -0800 |
---|---|---|
committer | David S. Miller <davem@davemloft.net> | 2006-01-18 14:20:56 -0800 |
commit | ad12583f46bcb6ce93ccd99fa063c0d701146b2e (patch) | |
tree | 58d68cf1a60cd3cf2b8ee0e9fbdcb38454e2082e /include | |
parent | 7ac5459ec0f074022818af35c589b9e2b406d7c3 (diff) | |
download | blackbird-op-linux-ad12583f46bcb6ce93ccd99fa063c0d701146b2e.tar.gz blackbird-op-linux-ad12583f46bcb6ce93ccd99fa063c0d701146b2e.zip |
[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 <dlstevens@us.ibm.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
Diffstat (limited to 'include')
0 files changed, 0 insertions, 0 deletions