X-Git-Url: http://ftp.safe.ca/?a=blobdiff_plain;f=drivers%2Fatm%2Fsolos-pci.c;h=6c828347c9cc4a437f0e6d257158e57f3d958812;hb=78f857f265241dfa6f343d75b45e8b30935f71df;hp=bfef8d255811d1500fb2c5a898b38d2244e5eace;hpb=4dbedf43d26276f6d7c8c3146d0a5b2f0309d968;p=safe%2Fjmp%2Flinux-2.6 diff --git a/drivers/atm/solos-pci.c b/drivers/atm/solos-pci.c index bfef8d2..6c82834 100644 --- a/drivers/atm/solos-pci.c +++ b/drivers/atm/solos-pci.c @@ -671,6 +671,10 @@ void solos_bh(unsigned long card_arg) memcpy_fromio(header, RX_BUF(card, port), sizeof(*header)); size = le16_to_cpu(header->size); + if (size > (card->buffer_size - sizeof(*header))){ + dev_warn(&card->dev->dev, "Invalid buffer size\n"); + continue; + } skb = alloc_skb(size + 1, GFP_ATOMIC); if (!skb) {