summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authormpi <mpi@openbsd.org>2015-11-03 12:25:37 +0000
committermpi <mpi@openbsd.org>2015-11-03 12:25:37 +0000
commitd260d7feb4cc5040837a0a440ad7b76752afcd30 (patch)
treeac38371e01a29189709a3e9abcc55dff544bb441
parentMissing comma. (diff)
downloadwireguard-openbsd-d260d7feb4cc5040837a0a440ad7b76752afcd30.tar.xz
wireguard-openbsd-d260d7feb4cc5040837a0a440ad7b76752afcd30.zip
Do not clear M_PROTO1 flag before calling if_start() because pseudo-
drivers, like vlan(4), call if_enqueue() in their *start function. Prevent an infinite recursion reported by Armin Wolfermann on bugs@.
-rw-r--r--sys/net/if.c3
1 files changed, 1 insertions, 2 deletions
diff --git a/sys/net/if.c b/sys/net/if.c
index 9f0e99baf68..a93599f930f 100644
--- a/sys/net/if.c
+++ b/sys/net/if.c
@@ -1,4 +1,4 @@
-/* $OpenBSD: if.c,v 1.401 2015/11/02 14:40:09 mpi Exp $ */
+/* $OpenBSD: if.c,v 1.402 2015/11/03 12:25:37 mpi Exp $ */
/* $NetBSD: if.c,v 1.35 1996/05/07 05:26:04 thorpej Exp $ */
/*
@@ -564,7 +564,6 @@ if_enqueue(struct ifnet *ifp, struct mbuf *m)
#if NBRIDGE > 0
if (ifp->if_bridgeport && (m->m_flags & M_PROTO1) == 0)
return (bridge_output(ifp, m, NULL, NULL));
- m->m_flags &= ~M_PROTO1; /* Loop prevention */
#endif
length = m->m_pkthdr.len;