summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorLinus Lüssing <linus.luessing@web.de>2013-06-16 23:20:34 +0200
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>2013-07-28 16:18:32 -0700
commit86fa4bff222f45bc33cc8b720f805b5b28edd19e (patch)
treec174e6b1ead012268087ddedb6fa51a9aa146371
parent519d018ae15412bd501598872300d4c883197b44 (diff)
downloadlwn-86fa4bff222f45bc33cc8b720f805b5b28edd19e.tar.gz
lwn-86fa4bff222f45bc33cc8b720f805b5b28edd19e.zip
bridge: fix switched interval for MLD Query types
[ Upstream commit 32de868cbc6bee010d2cee95b5071b25ecbec8c3 ] 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> Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
-rw-r--r--net/bridge/br_multicast.c5
1 files changed, 3 insertions, 2 deletions
diff --git a/net/bridge/br_multicast.c b/net/bridge/br_multicast.c
index e78269d798c0..940c0017389c 100644
--- a/net/bridge/br_multicast.c
+++ b/net/bridge/br_multicast.c
@@ -467,8 +467,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;