Skip to content

Commit

Permalink
bridge: fix switched interval for MLD Query types
Browse files Browse the repository at this point in the history
General Queries (the one with the Multicast Address field
set to zero / '::') are supposed to have a Maximum Response Delay
of [Query Response Interval], while for Multicast-Address-Specific
Queries it is [Last Listener Query Interval] - not the other way
round. (see RFC2710, section 7.3+7.8)

Signed-off-by: Linus Lüssing <linus.luessing@web.de>
Signed-off-by: David S. Miller <davem@davemloft.net>
  • Loading branch information
Linus Lüssing authored and David S. Miller committed Jun 18, 2013
1 parent 788dfca commit 32de868
Showing 1 changed file with 3 additions and 2 deletions.
5 changes: 3 additions & 2 deletions net/bridge/br_multicast.c
Original file line number Diff line number Diff line change
Expand Up @@ -465,8 +465,9 @@ static struct sk_buff *br_ip6_multicast_alloc_query(struct net_bridge *br,
skb_set_transport_header(skb, skb->len);
mldq = (struct mld_msg *) icmp6_hdr(skb);

interval = ipv6_addr_any(group) ? br->multicast_last_member_interval :
br->multicast_query_response_interval;
interval = ipv6_addr_any(group) ?
br->multicast_query_response_interval :
br->multicast_last_member_interval;

mldq->mld_type = ICMPV6_MGM_QUERY;
mldq->mld_code = 0;
Expand Down

0 comments on commit 32de868

Please sign in to comment.