Date: Mon, 15 Jun 2015 14:36:04 +0000 From: bugzilla-noreply@freebsd.org To: freebsd-net@FreeBSD.org Subject: [Bug 200323] BPF userland misuse can crash the system Message-ID: <bug-200323-2472-5xSsHlqo2L@https.bugs.freebsd.org/bugzilla/> In-Reply-To: <bug-200323-2472@https.bugs.freebsd.org/bugzilla/> References: <bug-200323-2472@https.bugs.freebsd.org/bugzilla/>
next in thread | previous in thread | raw e-mail | index | archive | help
https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=3D200323 --- Comment #3 from Ermal Lu=C3=A7i <eri@pfsense.org> --- Here is a patch against HEAD of FreeBSD. Also take a look at this link for a trace https://redmine.pfsense.org/issues/4685 If its ok with you Andrey i would like to commit this one. diff --git a/sys/netinet/if_ether.c b/sys/netinet/if_ether.c index fec6aa0..91e9568 100644 --- a/sys/netinet/if_ether.c +++ b/sys/netinet/if_ether.c @@ -364,6 +364,10 @@ retry: if ((la->la_flags & LLE_VALID) && ((la->la_flags & LLE_STATIC) || la->la_expire > time_uptime)) { bcopy(&la->ll_addr, desten, ifp->if_addrlen); + if (flags & LLE_EXCLUSIVE) + LLE_WUNLOCK(la); + else + LLE_RUNLOCK(la); /* * If entry has an expiry time and it is approaching, * see if we need to send an ARP request within this @@ -377,8 +381,7 @@ retry: if (pflags !=3D NULL) *pflags =3D la->la_flags; - error =3D 0; - goto done; + return (0); } if (la->la_flags & LLE_STATIC) { /* should not happen! */ --=20 You are receiving this mail because: You are the assignee for the bug.=
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?bug-200323-2472-5xSsHlqo2L>