Commit 32de868c authored by Linus Lüssing's avatar Linus Lüssing Committed by David S. Miller

bridge: fix switched interval for MLD Query types

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: default avatarLinus Lüssing <linus.luessing@web.de>
Signed-off-by: default avatarDavid S. Miller <davem@davemloft.net>
parent 788dfcac
...@@ -465,8 +465,9 @@ static struct sk_buff *br_ip6_multicast_alloc_query(struct net_bridge *br, ...@@ -465,8 +465,9 @@ static struct sk_buff *br_ip6_multicast_alloc_query(struct net_bridge *br,
skb_set_transport_header(skb, skb->len); skb_set_transport_header(skb, skb->len);
mldq = (struct mld_msg *) icmp6_hdr(skb); mldq = (struct mld_msg *) icmp6_hdr(skb);
interval = ipv6_addr_any(group) ? br->multicast_last_member_interval : interval = ipv6_addr_any(group) ?
br->multicast_query_response_interval; br->multicast_query_response_interval :
br->multicast_last_member_interval;
mldq->mld_type = ICMPV6_MGM_QUERY; mldq->mld_type = ICMPV6_MGM_QUERY;
mldq->mld_code = 0; mldq->mld_code = 0;
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment