summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorChristopher Pascoe <pascoe@cvs.openbsd.org>2005-11-01 06:26:53 +0000
committerChristopher Pascoe <pascoe@cvs.openbsd.org>2005-11-01 06:26:53 +0000
commit70a9ab1aa521ceabd9c5439a36d10b87c18bb1da (patch)
tree9061bb8d90ca6d58a89facb9b09025ac2f071dcf
parent6825954d90078d920e517f2183790e0d6434f214 (diff)
Always sure that we have memory for the 'dst' scrub information, which may
not have been allocated at the initial state synchronisation time. ok henning@
-rw-r--r--sys/net/if_pfsync.c4
1 files changed, 3 insertions, 1 deletions
diff --git a/sys/net/if_pfsync.c b/sys/net/if_pfsync.c
index c43b3b7d5f0..3143f754458 100644
--- a/sys/net/if_pfsync.c
+++ b/sys/net/if_pfsync.c
@@ -1,4 +1,4 @@
-/* $OpenBSD: if_pfsync.c,v 1.57 2005/10/28 03:20:41 mcbride Exp $ */
+/* $OpenBSD: if_pfsync.c,v 1.58 2005/11/01 06:26:52 pascoe Exp $ */
/*
* Copyright (c) 2002 Michael Shalayeff
@@ -522,6 +522,7 @@ pfsync_input(struct mbuf *m, ...)
}
continue;
}
+ pfsync_alloc_scrub_memory(&sp->dst, &st->dst);
pf_state_peer_ntoh(&sp->src, &st->src);
pf_state_peer_ntoh(&sp->dst, &st->dst);
st->expire = ntohl(sp->expire) + time_second;
@@ -647,6 +648,7 @@ pfsync_input(struct mbuf *m, ...)
PFSYNC_FLAG_STALE);
continue;
}
+ pfsync_alloc_scrub_memory(&up->dst, &st->dst);
pf_state_peer_ntoh(&up->src, &st->src);
pf_state_peer_ntoh(&up->dst, &st->dst);
st->expire = ntohl(up->expire) + time_second;