? if_vlan.c.diff
? o
Index: if_vlan.c
===================================================================
RCS file: /cvsroot/src/sys/net/if_vlan.c,v
retrieving revision 1.112
diff -u -u -r1.112 if_vlan.c
--- if_vlan.c	22 Nov 2017 05:17:32 -0000	1.112
+++ if_vlan.c	27 Nov 2017 00:56:33 -0000
@@ -1384,6 +1384,14 @@
 	ec = (void *)mib->ifvm_p;
 
 	bpf_mtap(ifp, m);
+
+	if (pfil_run_hooks(ifp->if_pfil, &m, ifp, PFIL_OUT) != 0) {
+		if (m != NULL)
+			m_freem(m);
+		error = 0;
+		goto out;
+	}
+
 	/*
 	 * If the parent can insert the tag itself, just mark
 	 * the tag in the mbuf header.
@@ -1568,6 +1576,12 @@
 	m_set_rcvif(m, &ifv->ifv_if);
 	ifv->ifv_if.if_ipackets++;
 
+	if (pfil_run_hooks(ifp->if_pfil, &m, ifp, PFIL_IN) != 0) {
+		if (m != NULL)
+			m_freem(m);
+		goto out;
+	}
+
 	m->m_flags &= ~M_PROMISC;
 	if_input(&ifv->ifv_if, m);
 out: