diff options
-rw-r--r-- | sys/net/pf.c | 5 |
1 files changed, 4 insertions, 1 deletions
diff --git a/sys/net/pf.c b/sys/net/pf.c index 8e6eed9e8f1..697cfdd986a 100644 --- a/sys/net/pf.c +++ b/sys/net/pf.c @@ -1,4 +1,4 @@ -/* $OpenBSD: pf.c,v 1.592 2008/06/11 03:26:03 henning Exp $ */ +/* $OpenBSD: pf.c,v 1.593 2008/06/11 03:28:10 henning Exp $ */ /* * Copyright (c) 2001 Daniel Hartmeier @@ -882,6 +882,9 @@ pf_find_state(struct pfi_kif *kif, struct pf_state_key_cmp *key, u_int dir, m->m_pkthdr.pf.statekey)->reverse = sk; } + if (dir == PF_OUT && m) + m->m_pkthdr.pf.statekey = NULL; + /* list is sorted, if-bound states before floating ones */ TAILQ_FOREACH(si, &sk->states, entry) if ((si->s->kif == pfi_all || si->s->kif == kif) && |