[ipfilter-cvs] ipfilter fil.c,v5-1-RELEASE
Brought to you by:
darren_r
From: Darren <dar...@us...> - 2014-06-15 12:09:15
|
Update of /cvsroot/ipfilter/ipfilter In directory sfp-cvs-1.v30.ch3.sourceforge.com:/tmp/cvs-serv6672 Modified Files: Tag: v5-1-RELEASE fil.c Log Message: #550 filter rule list corrupted with inserted rules Index: fil.c =================================================================== RCS file: /cvsroot/ipfilter/ipfilter/fil.c,v retrieving revision 1.68.2.58 retrieving revision 1.68.2.59 diff -C2 -d -r1.68.2.58 -r1.68.2.59 *** fil.c 13 Aug 2012 11:44:14 -0000 1.68.2.58 --- fil.c 15 Jun 2014 12:09:13 -0000 1.68.2.59 *************** *** 3898,3901 **** --- 3898,3903 ---- return s; } + + /* ------------------------------------------------------------------------ */ /* Function: ipf_fixskip */ *************** *** 4494,4498 **** --- 4496,4508 ---- fp = f; f = NULL; + fp->fr_next = NULL; fp->fr_dnext = NULL; + fp->fr_pnext = NULL; + fp->fr_pdnext = NULL; + fp->fr_grp = NULL; + fp->fr_grphead = NULL; + fp->fr_icmpgrp = NULL; + fp->fr_isc = (void *)-1; + fp->fr_ptr = NULL; fp->fr_ref = 0; fp->fr_flags |= FR_COPIED; *************** *** 4997,5001 **** --- 5007,5013 ---- break; ftail = &f->fr_next; + fprev = ftail; } + ftail = fprev; f = NULL; ptr = NULL; *************** *** 5088,5091 **** --- 5100,5105 ---- fp->fr_pnext = ftail; fp->fr_next = *ftail; + if (fp->fr_next != NULL) + fp->fr_next->fr_pnext = &fp->fr_next; *ftail = fp; if (addrem == 0) |