br_multicast.c (4904008165c8a1c48602b8316139691b8c735e6e) br_multicast.c (0fe5119e267f3e3d8ac206895f5922195ec55a8a)
1/*
2 * Bridge multicast support.
3 *
4 * Copyright (c) 2010 Herbert Xu <herbert@gondor.apana.org.au>
5 *
6 * This program is free software; you can redistribute it and/or modify it
7 * under the terms of the GNU General Public License as published by the Free
8 * Software Foundation; either version 2 of the License, or (at your option)

--- 1414 unchanged lines hidden (view full) ---

1423
1424 br_multicast_update_query_timer(br, query, max_delay);
1425
1426 /* Based on RFC4541, section 2.1.1 IGMP Forwarding Rules,
1427 * the arrival port for IGMP Queries where the source address
1428 * is 0.0.0.0 should not be added to router port list.
1429 */
1430 if ((saddr->proto == htons(ETH_P_IP) && saddr->u.ip4) ||
1/*
2 * Bridge multicast support.
3 *
4 * Copyright (c) 2010 Herbert Xu <herbert@gondor.apana.org.au>
5 *
6 * This program is free software; you can redistribute it and/or modify it
7 * under the terms of the GNU General Public License as published by the Free
8 * Software Foundation; either version 2 of the License, or (at your option)

--- 1414 unchanged lines hidden (view full) ---

1423
1424 br_multicast_update_query_timer(br, query, max_delay);
1425
1426 /* Based on RFC4541, section 2.1.1 IGMP Forwarding Rules,
1427 * the arrival port for IGMP Queries where the source address
1428 * is 0.0.0.0 should not be added to router port list.
1429 */
1430 if ((saddr->proto == htons(ETH_P_IP) && saddr->u.ip4) ||
1431 (saddr->proto == htons(ETH_P_IPV6) &&
1432 !ipv6_addr_any(&saddr->u.ip6)))
1431 saddr->proto == htons(ETH_P_IPV6))
1433 br_multicast_mark_router(br, port);
1434}
1435
1436static void br_ip4_multicast_query(struct net_bridge *br,
1437 struct net_bridge_port *port,
1438 struct sk_buff *skb,
1439 u16 vid)
1440{

--- 1209 unchanged lines hidden ---
1432 br_multicast_mark_router(br, port);
1433}
1434
1435static void br_ip4_multicast_query(struct net_bridge *br,
1436 struct net_bridge_port *port,
1437 struct sk_buff *skb,
1438 u16 vid)
1439{

--- 1209 unchanged lines hidden ---