summaryrefslogtreecommitdiff
path: root/sys/net/if_tokensubr.c
diff options
context:
space:
mode:
authorPedro Martelletto <pedro@cvs.openbsd.org>2006-09-26 13:11:39 +0000
committerPedro Martelletto <pedro@cvs.openbsd.org>2006-09-26 13:11:39 +0000
commiteb1c7bb141724021a7aacdf3f2d9931a6150fcaf (patch)
tree6f7ee55bc222ad881830846207fc024ca0c23705 /sys/net/if_tokensubr.c
parent682237ddd2445accd36330968288990de1ef4de2 (diff)
Fix compilation, okay henning@ mpf@
Diffstat (limited to 'sys/net/if_tokensubr.c')
-rw-r--r--sys/net/if_tokensubr.c15
1 files changed, 10 insertions, 5 deletions
diff --git a/sys/net/if_tokensubr.c b/sys/net/if_tokensubr.c
index d9e27f16919..3007ce6235a 100644
--- a/sys/net/if_tokensubr.c
+++ b/sys/net/if_tokensubr.c
@@ -1,4 +1,4 @@
-/* $OpenBSD: if_tokensubr.c,v 1.22 2006/06/17 14:14:12 henning Exp $ */
+/* $OpenBSD: if_tokensubr.c,v 1.23 2006/09/26 13:11:38 pedro Exp $ */
/* $NetBSD: if_tokensubr.c,v 1.7 1999/05/30 00:39:07 bad Exp $ */
/*
@@ -201,9 +201,14 @@ token_output(ifp0, m0, dst, rt0)
riflen = (ntohs(rif->tr_rcf) & TOKEN_RCF_LEN_MASK) >> 8;
}
/* If broadcasting on a simplex interface, loopback a copy. */
- if ((m->m_flags & M_BCAST) && (ifp->if_flags & IFF_SIMPLEX) &&
- m_tag_find(m, PACKET_TAG_PF_ROUTED, NULL) == NULL)
+ if ((m->m_flags & M_BCAST) && (ifp->if_flags & IFF_SIMPLEX)) {
+#if NPF > 0
+ struct pf_mtag *t;
+
+ if ((t = pf_find_mtag(m)) == NULL || !t->routed)
+#endif
mcopy = m_copy(m, 0, (int)M_COPYALL);
+ }
etype = htons(ETHERTYPE_IP);
break;
#if 0
@@ -432,8 +437,8 @@ token_input(ifp, m)
#if NCARP > 0
if (ifp->if_carp && ifp->if_type != IFT_CARP &&
- (carp_input(m, (u_int8_t *)&th->token_shost,
- (u_int8_t *)&th->token_dhost, l->llc_snap.ether_type) == 0))
+ (carp_input(m, (u_int8_t *)&trh->token_shost,
+ (u_int8_t *)&trh->token_dhost, l->llc_snap.ether_type) == 0))
return;
#endif