Source-Changes-HG archive

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]

[src/trunk]: src/sys/dist/pf/net apply a fix from OpenBSD:



details:   https://anonhg.NetBSD.org/src/rev/ba08803d2010
branches:  trunk
changeset: 587469:ba08803d2010
user:      peter <peter%NetBSD.org@localhost>
date:      Wed Jan 25 10:45:20 2006 +0000

description:
apply a fix from OpenBSD:

> revision 1.104
> date: 2006/01/18 22:03:21;  author: dhartmei;  state: Exp;  lines: +2 -2
> fix a bug in the fragment cache (used for 'scrub fragment crop/drop-ovl',
> but not 'fragment reassemble'), which can cause some fragments to get
> inserted into the cache twice, thereby violating an invariant, and panic-
> ing the system subsequently. ok deraadt@

diffstat:

 sys/dist/pf/net/pf_norm.c |  4 ++--
 1 files changed, 2 insertions(+), 2 deletions(-)

diffs (18 lines):

diff -r a4821367db5c -r ba08803d2010 sys/dist/pf/net/pf_norm.c
--- a/sys/dist/pf/net/pf_norm.c Wed Jan 25 04:20:54 2006 +0000
+++ b/sys/dist/pf/net/pf_norm.c Wed Jan 25 10:45:20 2006 +0000
@@ -1,4 +1,4 @@
-/*     $NetBSD: pf_norm.c,v 1.10 2005/12/11 12:24:25 christos Exp $    */
+/*     $NetBSD: pf_norm.c,v 1.11 2006/01/25 10:45:20 peter Exp $       */
 /*     $OpenBSD: pf_norm.c,v 1.97 2004/09/21 16:59:12 aaron Exp $ */
 
 /*
@@ -728,7 +728,7 @@
                        } else {
                                hosed++;
                        }
-               } else {
+               } else if (frp == NULL) {
                        /* There is a gap between fragments */
                        DPFPRINTF(("fragcache[%d]: gap %d %d-%d (%d-%d)\n",
                            h->ip_id, -aftercut, off, max, fra->fr_off,



Home | Main Index | Thread Index | Old Index