freebsd-skq/sys/netinet6
Andrey V. Elsukov 9f8b8e793b mld_v2_dispatch_general_query() is used by mld_fasttimo_vnet() to send
a reply to the MLDv2 General Query. In case when router has a lot of
multicast groups, the reply can take several packets due to MTU limitation.
Also we have a limit MLD_MAX_RESPONSE_BURST == 4, that limits the number
of packets we send in one shot. Then we recalculate the timer value and
schedule the remaining packets for sending.
The problem is that when we call mld_v2_dispatch_general_query() to send
remaining packets, we queue new reply in the same mbuf queue. And when
number of packets is bigger than MLD_MAX_RESPONSE_BURST, we get endless
reply of MLDv2 reports.
To fix this, add the check for remaining packets in the queue.

PR:		204831
MFC after:	1 week
Sponsored by:	Yandex LLC
2015-12-01 11:17:41 +00:00
..
dest6.c
frag6.c [netinet6]: Create a new IPv6 netisr which expects the frames to have been verified. 2015-11-06 23:07:43 +00:00
icmp6.c Fix the handling of IPv6 On-Link Redirects. 2015-09-14 19:17:25 +00:00
icmp6.h
in6_cksum.c Fix the checksum computation for UDPLite/IPv6. This requires the 2014-10-02 10:32:24 +00:00
in6_gif.c Eliminate the use of m_copydata() in gif_encapcheck(). 2015-07-29 14:07:43 +00:00
in6_ifattach.c Remove IN6_IFF_NOPFX. This flag was no longer used. 2015-09-10 06:08:42 +00:00
in6_ifattach.h
in6_mcast.c in6_mc_get: Fix recursion on if_addr_lock on malloc failure 2015-11-19 00:27:26 +00:00
in6_pcb.c Decompose TCP INP_INFO lock to increase short-lived TCP connections scalability: 2015-08-03 12:13:54 +00:00
in6_pcb.h Make in6_pcblookup_hash_locked and in6_pcbladdr static. 2014-09-10 13:17:35 +00:00
in6_pcbgroup.c Refactor / restructure the RSS code into generic, IPv4 and IPv6 specific 2015-01-18 18:06:40 +00:00
in6_proto.c Renove faith(4) and faithd(8) from base. It looks like industry 2014-11-09 21:33:01 +00:00
in6_rmx.c Rename rt_foreach_fib() to rt_foreach_fib_walk(). 2015-08-10 20:50:31 +00:00
in6_rss.c [netinet6]: Create a new IPv6 netisr which expects the frames to have been verified. 2015-11-06 23:07:43 +00:00
in6_rss.h Implement RSS hashing/re-hashing for IPv6 ingress packets. 2015-08-29 07:14:29 +00:00
in6_src.c Properly handle IPV6_NEXTHOP socket option in selectroute(). 2015-08-02 12:40:56 +00:00
in6_var.h - Remove SIOCGDRLST_IN6 and SIOCGPRLST_IN6. These are quite old APIs and 2015-09-10 06:31:24 +00:00
in6.c This fixes several places where callout_stops return is examined. The 2015-11-13 22:51:35 +00:00
in6.h [netinet6]: Create a new IPv6 netisr which expects the frames to have been verified. 2015-11-06 23:07:43 +00:00
ip6_ecn.h
ip6_forward.c Bring back the ability of passing cached route via nd6_output_ifp(). 2015-11-15 16:02:22 +00:00
ip6_gre.c Extern declarations in C files loses compile-time checking that 2014-12-25 21:32:37 +00:00
ip6_id.c
ip6_input.c Overhaul if_enc(4) and make it loadable in run-time. 2015-11-25 07:31:59 +00:00
ip6_ipsec.c Take extra reference to security policy before calling crypto_dispatch(). 2015-09-30 08:16:33 +00:00
ip6_ipsec.h Remove flag/flags argument from the following functions: 2014-12-11 18:35:34 +00:00
ip6_mroute.c Simplify ip[6] simploop: 2015-08-08 15:58:35 +00:00
ip6_mroute.h o Make net.inet6.ip6.mif6table return special API structure, that doesn't 2015-04-06 22:12:18 +00:00
ip6_output.c Bring back the ability of passing cached route via nd6_output_ifp(). 2015-11-15 16:02:22 +00:00
ip6_var.h [netinet6]: Create a new IPv6 netisr which expects the frames to have been verified. 2015-11-06 23:07:43 +00:00
ip6.h
ip6protosw.h Merge 'struct ip6protosw' and 'struct protosw' into one. Now we have 2014-08-08 01:57:15 +00:00
mld6_var.h - Rename 'struct mld_ifinfo' into 'struct mld_ifsoftc', since it really 2015-02-19 22:37:01 +00:00
mld6.c mld_v2_dispatch_general_query() is used by mld_fasttimo_vnet() to send 2015-12-01 11:17:41 +00:00
mld6.h
nd6_nbr.c Unify setting lladdr for AF_INET[6]. 2015-11-07 11:12:00 +00:00
nd6_rtr.c Add new rt_foreach_fib_walk_del() function for deleting route entries 2015-11-30 05:51:14 +00:00
nd6.c Add new rt_foreach_fib_walk_del() function for deleting route entries 2015-11-30 05:51:14 +00:00
nd6.h Bring back the ability of passing cached route via nd6_output_ifp(). 2015-11-15 16:02:22 +00:00
pim6_var.h Remove more constants related to static sysctl nodes. The MAXID constants 2014-02-25 18:44:33 +00:00
pim6.h
raw_ip6.c Do not count security policy violation twice. 2014-12-11 19:20:13 +00:00
raw_ip6.h
route6.c
scope6_var.h Sync to HEAD@r274766 2014-11-21 01:22:33 +00:00
scope6.c Do more fine-grained lltable locking: use table runtime lock as rare 2014-11-23 15:38:06 +00:00
sctp6_usrreq.c Move including netinet/icmp6.h around to avoid a problem when including 2015-07-25 18:26:09 +00:00
sctp6_var.h
send.c
send.h
tcp6_var.h
udp6_usrreq.c Compare mbuf pointer to NULL rather than to 0. 2015-09-21 12:53:26 +00:00
udp6_var.h Add support for UDP-Lite protocol (RFC 3828) to IPv4 and IPv6 stacks. 2014-04-07 01:53:03 +00:00