--- zzzz-none-000/linux-2.6.28.10/net/ipv4/netfilter.c 2009-05-02 18:54:43.000000000 +0000 +++ fusiv-7390-686/linux-2.6.28.10/net/ipv4/netfilter.c 2012-02-14 14:37:49.000000000 +0000 @@ -168,7 +168,7 @@ if (hook != NF_INET_PRE_ROUTING && hook != NF_INET_LOCAL_IN) break; if ((protocol == 0 && !csum_fold(skb->csum)) || - !csum_tcpudp_magic(iph->saddr, iph->daddr, + !csum_tcpudp_magic(RD16(iph->saddr), RD16(iph->daddr), skb->len - dataoff, protocol, skb->csum)) { skb->ip_summed = CHECKSUM_UNNECESSARY; @@ -179,7 +179,7 @@ if (protocol == 0) skb->csum = 0; else - skb->csum = csum_tcpudp_nofold(iph->saddr, iph->daddr, + skb->csum = csum_tcpudp_nofold(RD16(iph->saddr), RD16(iph->daddr), skb->len - dataoff, protocol, 0); csum = __skb_checksum_complete(skb);