Skip site navigation (1)Skip section navigation (2)
Date:      Mon, 4 Feb 2013 17:29:13 +0000 (UTC)
From:      Andriy Gapon <avg@FreeBSD.org>
To:        src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org
Subject:   svn commit: r246324 - head/sys/netgraph
Message-ID:  <201302041729.r14HTD0U020953@svn.freebsd.org>

next in thread | raw e-mail | index | archive | help
Author: avg
Date: Mon Feb  4 17:29:13 2013
New Revision: 246324
URL: http://svnweb.freebsd.org/changeset/base/246324

Log:
  ng_ether_ifnet_arrival_event: check interface type before using IFP2NG
  
  The check is copied from vnet_ng_ether_init.
  Not sure if it covers all the types that we want to support with
  ng_ether.
  
  Reported by:	markj
  Discussed with:	zec
  MFC after:	10 days
  X-MFC with:	r246245

Modified:
  head/sys/netgraph/ng_ether.c

Modified: head/sys/netgraph/ng_ether.c
==============================================================================
--- head/sys/netgraph/ng_ether.c	Mon Feb  4 16:20:13 2013	(r246323)
+++ head/sys/netgraph/ng_ether.c	Mon Feb  4 17:29:13 2013	(r246324)
@@ -410,11 +410,17 @@ static void
 ng_ether_ifnet_arrival_event(void *arg __unused, struct ifnet *ifp)
 {
 	char name[IFNAMSIZ];
-	node_p node = IFP2NG(ifp);
+	node_p node;
+
+	/* Only ethernet interfaces are of interest. */
+	if (ifp->if_type != IFT_ETHER
+	    && ifp->if_type != IFT_L2VLAN)
+		return;
 
 	/*
 	 * Just return if it's a new interface without an ng_ether companion.
 	 */
+	node = IFP2NG(ifp);
 	if (node == NULL)
 		return;
 



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