Skip site navigation (1)Skip section navigation (2)
Date:      Mon, 15 Apr 2013 14:42:38 +0400
From:      Gleb Smirnoff <glebius@FreeBSD.org>
To:        Chris Forgeron <cforgeron@acsi.ca>
Cc:        Jeremy Chadwick <jdc@koitsu.org>, "freebsd-stable@freebsd.org" <freebsd-stable@freebsd.org>, Jack Vogel <jack.vogel@intel.com>, John Baldwin <jhb@freebsd.org>
Subject:   Re: kern/165903: mbuf leak
Message-ID:  <20130415104238.GP76816@FreeBSD.org>
In-Reply-To: <46D80686C389884BB0C047851038EC456D8C0F52@AA-EX0.acsi.ca>
References:  <46D80686C389884BB0C047851038EC456D8BCEBC@AA-EX0.acsi.ca> <20130410235347.GA38492@icarus.home.lan> <20130411000818.GA38803@icarus.home.lan> <46D80686C389884BB0C047851038EC456D8C0EF0@AA-EX0.acsi.ca> <20130413235031.GA8212@icarus.home.lan> <46D80686C389884BB0C047851038EC456D8C0F52@AA-EX0.acsi.ca>

next in thread | previous in thread | raw e-mail | index | archive | help

--+OvhQd+MVTzxy63P
Content-Type: text/plain; charset=koi8-r
Content-Disposition: inline

  Chris,

  can you please test attached patch?

  Jeremy, thanks for cc :)

-- 
Totus tuus, Glebius.

--+OvhQd+MVTzxy63P
Content-Type: text/x-diff; charset=koi8-r
Content-Disposition: attachment; filename="if_ether.c.diff"

Index: if_ether.c
===================================================================
--- if_ether.c	(revision 249327)
+++ if_ether.c	(working copy)
@@ -558,13 +558,13 @@ in_arpinput(struct mbuf *m)
 	if (ah->ar_pln != sizeof(struct in_addr)) {
 		log(LOG_NOTICE, "in_arp: requested protocol length != %zu\n",
 		    sizeof(struct in_addr));
-		return;
+		goto drop;
 	}
 
 	if (allow_multicast == 0 && ETHER_IS_MULTICAST(ar_sha(ah))) {
 		log(LOG_NOTICE, "arp: %*D is multicast\n",
 		    ifp->if_addrlen, (u_char *)ar_sha(ah), ":");
-		return;
+		goto drop;
 	}
 
 	op = ntohs(ah->ar_op);

--+OvhQd+MVTzxy63P--



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