[IPV4] SNMP: Support InTruncatedPkts
authorMitsuru Chinen <mitch@linux.vnet.ibm.com>
Mon, 30 Apr 2007 07:46:30 +0000 (00:46 -0700)
committerDavid S. Miller <davem@sunset.davemloft.net>
Mon, 30 Apr 2007 07:58:26 +0000 (00:58 -0700)
An IP datagram which is being discarded because the datagram frame
didn't carry enough data should be counted as InTruncatedPkts.

Signed-off-by: Mitsuru Chinen <mitch@linux.vnet.ibm.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
net/ipv4/ip_input.c

index 63ab5230c6117ba4315c599b816105f395416ecd..c8c455dd9cafd0dbef83cb6e36a421940764cbbc 100644 (file)
@@ -416,7 +416,10 @@ int ip_rcv(struct sk_buff *skb, struct net_device *dev, struct packet_type *pt,
                goto inhdr_error;
 
        len = ntohs(iph->tot_len);
-       if (skb->len < len || len < (iph->ihl*4))
+       if (skb->len < len) {
+               IP_INC_STATS_BH(IPSTATS_MIB_INTRUNCATEDPKTS);
+               goto drop;
+       } else if (len < (iph->ihl*4))
                goto inhdr_error;
 
        /* Our transport medium may have padded the buffer out. Now we know it