Skip site navigation (1)Skip section navigation (2)
Date:      Fri, 03 Jul 2015 10:56:48 +0300
From:      "Andrey V. Elsukov" <ae@FreeBSD.org>
To:        Kristof Provost <kp@FreeBSD.org>, koobs@FreeBSD.org
Cc:        freebsd-net@FreeBSD.org
Subject:   Re: radvd issue on CURRENT
Message-ID:  <55964040.4050809@FreeBSD.org>
In-Reply-To: <4BA4AF18-6CC7-48A9-8035-22B3E209257A@FreeBSD.org>
References:  <7B00338E-6264-44FD-9A55-8E29C01467E7@FreeBSD.org> <5596192F.2050802@FreeBSD.org> <4BA4AF18-6CC7-48A9-8035-22B3E209257A@FreeBSD.org>

next in thread | previous in thread | raw e-mail | index | archive | help
This is an OpenPGP/MIME signed message (RFC 4880 and 3156)
--MKL5sLqn29imwKfkiMEWksS4wa9jt8Wt2
Content-Type: text/plain; charset=utf-8
Content-Transfer-Encoding: quoted-printable

On 03.07.2015 09:31, Kristof Provost wrote:
Hi Kristof,

can you test this patch instead:
Index: ip6_output.c
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D
--- ip6_output.c	(revision 284791)
+++ ip6_output.c	(working copy)
@@ -2189,12 +2189,13 @@ ip6_getpcbopt(struct ip6_pktopts *pktopt, int opt=
n

 	switch (optname) {
 	case IPV6_PKTINFO:
-		if (pktopt && pktopt->ip6po_pktinfo)
-			optdata =3D (void *)pktopt->ip6po_pktinfo;
-		else {
+		optdata =3D (void *)&null_pktinfo;
+		if (pktopt && pktopt->ip6po_pktinfo) {
+			bcopy(pktopt->ip6po_pktinfo, &null_pktinfo, sizeof(null_pktinfo));
+			in6_clearscope(&null_pktinfo.ipi6_addr);
+		} else {
 			/* XXX: we don't have to do this every time... */
 			bzero(&null_pktinfo, sizeof(null_pktinfo));
-			optdata =3D (void *)&null_pktinfo;
 		}
 		optdatalen =3D sizeof(struct in6_pktinfo);
 		break;
@@ -2566,6 +2567,7 @@ ip6_setpktopt(int optname, u_char *buf, int len, s
 		    !IN6_IS_ADDR_UNSPECIFIED(&pktinfo->ipi6_addr)) {
 			struct in6_ifaddr *ia;

+			in6_setscope(&pktinfo->ipi6_addr, ifp);
 			ia =3D in6ifa_ifpwithaddr(ifp, &pktinfo->ipi6_addr);
 			if (ia =3D=3D NULL)
 				return (EADDRNOTAVAIL);


--=20
WBR, Andrey V. Elsukov


--MKL5sLqn29imwKfkiMEWksS4wa9jt8Wt2
Content-Type: application/pgp-signature; name="signature.asc"
Content-Description: OpenPGP digital signature
Content-Disposition: attachment; filename="signature.asc"

-----BEGIN PGP SIGNATURE-----
Version: GnuPG v2
Comment: Using GnuPG with Thunderbird - http://www.enigmail.net/

iQEcBAEBCAAGBQJVlkBBAAoJEAHF6gQQyKF6u74IAIEzgv6275Af/00fWuvi8C1p
1cBYIrcq0EkxFUyFIhad/WwLk+jPu2mXqchxCEUggBm649W9dfWZnz2ZEiGrKt0E
pGZRUJts2vFKguJutqZF5qWnuCXhrdOFm/4+kpvk5By8NP0rFEQ9dB6iAPbSIG/0
xMuViCzVht0tcQiNPB4dfSHxahfRc3YoE0OUxFRVpvScaIBykxsIWKrqUPLEya1r
Vvi6Xe4RRDC0RHNEg/ffIlWWkAWaZ2gUuAxi+T1sg8PkgGUgpXu78g5VsmpmLtIz
chV+67wcAIWVQ38FqGHcwV9bQvUi669jQKXnN7JVsYdfF3TXhwj3hWZCDwax2E4=
=WhGz
-----END PGP SIGNATURE-----

--MKL5sLqn29imwKfkiMEWksS4wa9jt8Wt2--



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?55964040.4050809>