After adding couple of printf() to fil.c and ip_state.c, I'm now pretty
sure that ofin with initialized fin_v in ip_state.c is causing the
crash.  I could see that by doing a traceroute to ipv4 IP on the machine,
the fin_v sometimes gets a value of 6 that makes the IPV6 code gets executed
in fil.c (but I wasn't able to reproduce the crash)

I've a very simple patch here.  Could someone take a look?  Is it good
enough or should I do the ofin.fin_v = ip->ip_v; in ip_state.c before
calling fr_makefrip() instead?

Thanks

--------------------cut here----------------------------

*** fil.c       Wed Jul 19 16:27:54 2000
--- fil_new.c   Tue Nov 28 23:17:42 2000
***************
*** 221,227 ****
  #ifdef        _KERNEL
        fin->fin_icode = ipl_unreach;
  #endif
!       v = fin->fin_v;
        fi->fi_v = v;
        fin->fin_hlen = hlen;
        if (v == 4) {
--- 221,227 ----
  #ifdef        _KERNEL
        fin->fin_icode = ipl_unreach;
  #endif
!       v = fin->fin_v = ip->ip_v;
        fi->fi_v = v;
        fin->fin_hlen = hlen;
        if (v == 4) {
 



To Unsubscribe: send mail to [EMAIL PROTECTED]
with "unsubscribe freebsd-hackers" in the body of the message

Reply via email to