diff options
author | David Gwynne <dlg@cvs.openbsd.org> | 2009-01-30 10:32:27 +0000 |
---|---|---|
committer | David Gwynne <dlg@cvs.openbsd.org> | 2009-01-30 10:32:27 +0000 |
commit | 0827fc0116d552147ac67ddb1da20fc37bad6d7d (patch) | |
tree | 821ba98caaab00f13d7a4050cbd8da04023f98b1 /sys | |
parent | b66a87ee9cd61ddcd5ded18d388ffd199fb3f9f4 (diff) |
sprinkle splassert(IPL_SOFTNET) around the code that inserts, unlinks, and
frees pf states.
ok mcbride@
Diffstat (limited to 'sys')
-rw-r--r-- | sys/net/pf.c | 8 |
1 files changed, 7 insertions, 1 deletions
diff --git a/sys/net/pf.c b/sys/net/pf.c index b483c67b0ac..9dc6b29a4b7 100644 --- a/sys/net/pf.c +++ b/sys/net/pf.c @@ -1,4 +1,4 @@ -/* $OpenBSD: pf.c,v 1.630 2009/01/29 15:12:28 pyr Exp $ */ +/* $OpenBSD: pf.c,v 1.631 2009/01/30 10:32:26 dlg Exp $ */ /* * Copyright (c) 2001 Daniel Hartmeier @@ -773,6 +773,8 @@ int pf_state_insert(struct pfi_kif *kif, struct pf_state_key *skw, struct pf_state_key *sks, struct pf_state *s) { + splassert(IPL_SOFTNET); + s->kif = kif; if (skw == sks) { @@ -1050,6 +1052,8 @@ pf_src_tree_remove_state(struct pf_state *s) void pf_unlink_state(struct pf_state *cur) { + splassert(IPL_SOFTNET); + if (cur->src.state == PF_TCPS_PROXY_DST) { /* XXX wire key the right one? */ pf_send_tcp(cur->rule.ptr, cur->key[PF_SK_WIRE]->af, @@ -1079,6 +1083,8 @@ pf_unlink_state(struct pf_state *cur) void pf_free_state(struct pf_state *cur) { + splassert(IPL_SOFTNET); + #if NPFSYNC > 0 if (pfsyncif != NULL && (pfsyncif->sc_bulk_send_next == cur || |