summaryrefslogtreecommitdiff
path: root/sys/net/if_pfsync.c
diff options
context:
space:
mode:
Diffstat (limited to 'sys/net/if_pfsync.c')
-rw-r--r--sys/net/if_pfsync.c6
1 files changed, 4 insertions, 2 deletions
diff --git a/sys/net/if_pfsync.c b/sys/net/if_pfsync.c
index eac436fbbdc..bcfb01ad7f0 100644
--- a/sys/net/if_pfsync.c
+++ b/sys/net/if_pfsync.c
@@ -1,4 +1,4 @@
-/* $OpenBSD: if_pfsync.c,v 1.148 2010/07/09 09:01:32 dlg Exp $ */
+/* $OpenBSD: if_pfsync.c,v 1.149 2010/07/09 11:16:45 dlg Exp $ */
/*
* Copyright (c) 2002 Michael Shalayeff
@@ -2217,7 +2217,9 @@ pfsync_bulk_update(void *arg)
break;
}
- if (i > 0 && TAILQ_EMPTY(&sc->sc_qs[PFSYNC_S_UPD])) {
+ if (i > 1 && (sc->sc_if.if_mtu - sc->sc_len) <
+ sizeof(struct pfsync_state)) {
+ /* we've filled a packet */
sc->sc_bulk_next = st;
timeout_add(&sc->sc_bulk_tmo, 1);
break;