diff options
author | peter <peter@FreeBSD.org> | 1997-03-02 15:50:35 +0000 |
---|---|---|
committer | peter <peter@FreeBSD.org> | 1997-03-02 15:50:35 +0000 |
commit | 240550ea53f52f303a284b0f926b489e88a88fed (patch) | |
tree | ca11d3e65b58ac6ba4fc4209514e540b4acad5f0 /sys/netinet/ip_state.c | |
parent | f0c7769b1f466a6462b72c64c304a829acc48555 (diff) | |
download | FreeBSD-src-240550ea53f52f303a284b0f926b489e88a88fed.zip FreeBSD-src-240550ea53f52f303a284b0f926b489e88a88fed.tar.gz |
Import ipfilter 3.1.8 kernel components
Diffstat (limited to 'sys/netinet/ip_state.c')
-rw-r--r-- | sys/netinet/ip_state.c | 8 |
1 files changed, 7 insertions, 1 deletions
diff --git a/sys/netinet/ip_state.c b/sys/netinet/ip_state.c index 62a49aa..2643ce9 100644 --- a/sys/netinet/ip_state.c +++ b/sys/netinet/ip_state.c @@ -7,7 +7,7 @@ */ #if !defined(lint) && defined(LIBC_SCCS) static char sccsid[] = "@(#)ip_state.c 1.8 6/5/96 (C) 1993-1995 Darren Reed"; -static char rcsid[] = "$Id: ip_state.c,v 2.0.1.2 1997/01/09 15:22:45 darrenr Exp $"; +static char rcsid[] = "$Id: ip_state.c,v 2.0.1.3 1997/02/16 06:18:36 darrenr Exp $"; #endif #if !defined(_KERNEL) && !defined(KERNEL) @@ -411,13 +411,16 @@ void fr_stateunload() { register int i; register ipstate_t *is, **isp; + int s; MUTEX_ENTER(&ipf_state); + SPLNET(s); for (i = 0; i < IPSTATE_SIZE; i++) for (isp = &ips_table[i]; (is = *isp); ) { *isp = is->is_next; KFREE(is); } + SPLX(s); MUTEX_EXIT(&ipf_state); } @@ -430,8 +433,10 @@ void fr_timeoutstate() { register int i; register ipstate_t *is, **isp; + int s; MUTEX_ENTER(&ipf_state); + SPLNET(s); for (i = 0; i < IPSTATE_SIZE; i++) for (isp = &ips_table[i]; (is = *isp); ) if (is->is_age && !--is->is_age) { @@ -444,6 +449,7 @@ void fr_timeoutstate() ips_num--; } else isp = &is->is_next; + SPLX(s); MUTEX_EXIT(&ipf_state); } |