From 9cd70e53235165dea00bcad0df513c8fbaeb9b53 Mon Sep 17 00:00:00 2001 From: luigi Date: Wed, 24 Mar 2010 15:16:59 +0000 Subject: Honor ip.fw.one_pass when a packet comes out of a pipe without being delayed. I forgot to handle this case when i did the mtag cleanup three months ago. PR: 145004 --- sys/netinet/ipfw/ip_dn_io.c | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) (limited to 'sys/netinet') diff --git a/sys/netinet/ipfw/ip_dn_io.c b/sys/netinet/ipfw/ip_dn_io.c index 70f14ca..ae168ce 100644 --- a/sys/netinet/ipfw/ip_dn_io.c +++ b/sys/netinet/ipfw/ip_dn_io.c @@ -762,7 +762,11 @@ dummynet_io(struct mbuf **m0, int dir, struct ip_fw_args *fwa) * */ if (/*dn_cfg.io_fast &&*/ m == *m0 && (dir & PROTO_LAYER2) == 0 ) { - /* fast io */ + /* fast io, rename the tag * to carry reinject info. */ + struct m_tag *tag = m_tag_first(m); + + tag->m_tag_cookie = MTAG_IPFW_RULE; + tag->m_tag_id = 0; io_pkt_fast++; if (m->m_nextpkt != NULL) { printf("dummynet: fast io: pkt chain detected!\n"); -- cgit v1.1