Date: Sat, 18 Feb 2006 21:30:13 GMT From: Cristian KLEIN <cristi@net.utcluj.ro> To: freebsd-bugs@FreeBSD.org Subject: Re: kern/93526: IPv6 Multicast Listener Reports (MLD6 Reports) are not being sent on 6.1-PRERELEASE #5 Message-ID: <200602182130.k1ILUDgN040619@freefall.freebsd.org>
next in thread | raw e-mail | index | archive | help
The following reply was made to PR kern/93526; it has been noted by GNATS. From: Cristian KLEIN <cristi@net.utcluj.ro> To: bug-followup@FreeBSD.org, cristi@net.utcluj.ro Cc: Subject: Re: kern/93526: IPv6 Multicast Listener Reports (MLD6 Reports) are not being sent on 6.1-PRERELEASE #5 Date: Sat, 18 Feb 2006 23:26:19 +0200 This is a multi-part message in MIME format. --------------010205060705000004050405 Content-Type: text/plain; charset=ISO-8859-1 Content-Transfer-Encoding: 7bit I found out that the problema has to do with the timer that sends the MLD report, but I wasn't able to fix it. However, I applied a very ugly workaround. Instead of sending MLD Reports in the next 0 to timer milliseconds, they are sent immediately. I hope this will be useful. --------------010205060705000004050405 Content-Type: text/x-patch; name="mld6.patch" Content-Transfer-Encoding: 7bit Content-Disposition: inline; filename="mld6.patch" --- sys/netinet6/mld6.c.orig Sat Feb 18 23:18:27 2006 +++ sys/netinet6/mld6.c Sat Feb 18 23:18:41 2006 @@ -384,9 +384,13 @@ IPV6_ADDR_MC_SCOPE(&in6m->in6m_addr) < IPV6_ADDR_SCOPE_LINKLOCAL) continue; - + if (IN6_IS_ADDR_UNSPECIFIED(&mld_addr) || IN6_ARE_ADDR_EQUAL(&mld_addr, &in6m->in6m_addr)) { + + /* KC: very ugly hack */ + mld6_sendpkt(in6m, MLD_LISTENER_REPORT, NULL); + if (timer == 0) { /* send a report immediately */ mld_stoptimer(in6m); --------------010205060705000004050405--
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?200602182130.k1ILUDgN040619>