Revert to Fedora kernel-2.6.17-1.2187_FC5 patched with vs2.0.2.1; there are too many...
[linux-2.6.git] / net / ipv6 / netfilter / nf_conntrack_reasm.c
index 00d5583..3e31903 100644 (file)
@@ -14,6 +14,7 @@
  * 2 of the License, or (at your option) any later version.
  */
 
+#include <linux/config.h>
 #include <linux/errno.h>
 #include <linux/types.h>
 #include <linux/string.h>
@@ -455,9 +456,13 @@ static int nf_ct_frag6_queue(struct nf_ct_frag6_queue *fq, struct sk_buff *skb,
                DEBUGP("queue: message is too short.\n");
                goto err;
        }
-       if (pskb_trim_rcsum(skb, end - offset)) {
-               DEBUGP("Can't trim\n");
-               goto err;
+       if (end-offset < skb->len) {
+               if (pskb_trim(skb, end - offset)) {
+                       DEBUGP("Can't trim\n");
+                       goto err;
+               }
+               if (skb->ip_summed != CHECKSUM_UNNECESSARY)
+                       skb->ip_summed = CHECKSUM_NONE;
        }
 
        /* Find out which fragments are in front and at the back of us