]> pilppa.org Git - linux-2.6-omap-h63xx.git/blobdiff - net/ipv4/netfilter/ipt_TTL.c
[NETFILTER]: x_tables: remove unused argument to target functions
[linux-2.6-omap-h63xx.git] / net / ipv4 / netfilter / ipt_TTL.c
index f48892ae0be5c8bbd094b7296929ed45f94df4bd..164007107b5e0577ef5b52e6644af3bb485ad7f9 100644 (file)
@@ -23,11 +23,10 @@ static unsigned int
 ipt_ttl_target(struct sk_buff **pskb,
               const struct net_device *in, const struct net_device *out,
               unsigned int hooknum, const struct xt_target *target,
-              const void *targinfo, void *userinfo)
+              const void *targinfo)
 {
        struct iphdr *iph;
        const struct ipt_TTL_info *info = targinfo;
-       u_int16_t diffs[2];
        int new_ttl;
 
        if (!skb_make_writable(pskb, (*pskb)->len))
@@ -55,12 +54,10 @@ ipt_ttl_target(struct sk_buff **pskb,
        }
 
        if (new_ttl != iph->ttl) {
-               diffs[0] = htons(((unsigned)iph->ttl) << 8) ^ 0xFFFF;
+               iph->check = nf_csum_update((iph->ttl << 8) ^ 0xFFFF,
+                                           new_ttl << 8,
+                                           iph->check);
                iph->ttl = new_ttl;
-               diffs[1] = htons(((unsigned)iph->ttl) << 8);
-               iph->check = csum_fold(csum_partial((char *)diffs,
-                                                   sizeof(diffs),
-                                                   iph->check^0xFFFF));
        }
 
        return IPT_CONTINUE;