UDP6 Multicast Bug found in kernel.

看板DFBSD_submit作者時間16年前 (2009/06/27 13:01), 編輯推噓0(000)
留言0則, 0人參與, 最新討論串1/2 (看更多)
--qp4W5+cUSnZs0RIF Content-Type: multipart/mixed; boundary="GxcwvYAGnODwn7V8" Content-Disposition: inline --GxcwvYAGnODwn7V8 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In trying to get dhcpv6 running on my new router, I found that udp6 multicasct packets weren't being delivered to userland clients. I could see them via a non-promiscuous tcpdump, I could ping the multicast address while the process using it was active, and I could see the associations via ifmcstatus. I looked in the kernel and found something suspicious. Attached is a patch. Let me know what you think. Kyle --GxcwvYAGnODwn7V8 Content-Type: text/plain; charset=us-ascii Content-Disposition: attachment; filename="0001-Skip-placemarker-PCB-s-instead-of-looking-for-them.patch" Content-Transfer-Encoding: quoted-printable =46rom 96cba86ef2bbee7892238be165b1ef6c14bf3b38 Mon Sep 17 00:00:00 2001 =46rom: Kyle Butt <kyle@vidanueva.greenhatgeek.net> Date: Sat, 27 Jun 2009 00:15:07 -0400 Subject: [PATCH] Skip placemarker PCB's instead of looking for them. Fixes UDP6 multicast Compared with other PCB loops including UDP6 unicast and UDP4 multicast. --- sys/netinet6/udp6_usrreq.c | 2 +- 1 files changed, 1 insertions(+), 1 deletions(-) diff --git a/sys/netinet6/udp6_usrreq.c b/sys/netinet6/udp6_usrreq.c index 0b33627..748429b 100644 --- a/sys/netinet6/udp6_usrreq.c +++ b/sys/netinet6/udp6_usrreq.c @@ -231,7 +231,7 @@ udp6_input(struct mbuf **mp, int *offp, int proto) */ last =3D NULL; LIST_FOREACH(in6p, &udbinfo.pcblisthead, inp_list) { - if (!(in6p->inp_flags & INP_PLACEMARKER)) + if (in6p->inp_flags & INP_PLACEMARKER) continue; if (!(in6p->inp_vflag & INP_IPV6)) continue; --=20 1.6.2.5 --GxcwvYAGnODwn7V8-- --qp4W5+cUSnZs0RIF Content-Type: application/pgp-signature Content-Disposition: inline -----BEGIN PGP SIGNATURE----- Version: GnuPG v1.4.9 (DragonFly) iEYEARECAAYFAkpFknsACgkQyUJwxTzYDWevIgCgpFIxCxEzpw3w4Q7dfep8ET5C abgAn27AHLQVGL7Fz4a/1+RmzRdkFYKw =AuPL -----END PGP SIGNATURE----- --qp4W5+cUSnZs0RIF--
文章代碼(AID): #1AHQUL00 (DFBSD_submit)
文章代碼(AID): #1AHQUL00 (DFBSD_submit)