Meanwhile, try this patch.

Darren

Index: ip_nat.c
===================================================================
RCS file: /devel/CVS/IP-Filter/ip_nat.c,v
retrieving revision 2.195.2.41
diff -c -r2.195.2.41 ip_nat.c
*** ip_nat.c    15 Jul 2005 20:34:17 -0000      2.195.2.41
--- ip_nat.c    18 Jul 2005 12:12:22 -0000
***************
*** 3804,3810 ****
                        CALC_SUMD(s1, s2, sumd);
                        fix_outcksum(fin, &fin->fin_ip->ip_sum, sumd);
                }
! #if !defined(_KERNEL) || defined(MENTAT) || defined(__sgi) || defined(linux)
                else {
                        if (nat->nat_dir == NAT_OUTBOUND)
                                fix_outcksum(fin, &fin->fin_ip->ip_sum,
--- 3804,3810 ----
                        CALC_SUMD(s1, s2, sumd);
                        fix_outcksum(fin, &fin->fin_ip->ip_sum, sumd);
                }
! #if 1
                else {
                        if (nat->nat_dir == NAT_OUTBOUND)
                                fix_outcksum(fin, &fin->fin_ip->ip_sum,
***************
*** 4113,4120 ****
         * fast forwarding (so that it doesn't need to be recomputed) but with
         * header checksum offloading, perhaps it is a moot point.
         */
! #if !defined(_KERNEL) || defined(MENTAT) || defined(__sgi) || \
!      defined(__osf__) || defined(linux)
        if (nat->nat_dir == NAT_OUTBOUND)
                fix_incksum(fin, &fin->fin_ip->ip_sum, nat->nat_ipsumd);
        else
--- 4113,4119 ----
         * fast forwarding (so that it doesn't need to be recomputed) but with
         * header checksum offloading, perhaps it is a moot point.
         */
! #if 1
        if (nat->nat_dir == NAT_OUTBOUND)
                fix_incksum(fin, &fin->fin_ip->ip_sum, nat->nat_ipsumd);
        else

Reply via email to