[patch 2/3] hfc_usb: fix read buffer overflow
From: akpm@linux-foundation.org
Date: 2009-08-06 23:06:56
From: Roel Kluin <redacted> Check whether index is within bounds before testing the element. Signed-off-by: Roel Kluin <redacted> Cc: Karsten Keil <redacted> Signed-off-by: Andrew Morton <akpm@linux-foundation.org> --- drivers/isdn/hisax/hfc_usb.c | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff -puN drivers/isdn/hisax/hfc_usb.c~hfc_usb-fix-read-buffer-overflow drivers/isdn/hisax/hfc_usb.c
--- a/drivers/isdn/hisax/hfc_usb.c~hfc_usb-fix-read-buffer-overflow
+++ a/drivers/isdn/hisax/hfc_usb.c@@ -817,8 +817,8 @@ collect_rx_frame(usb_fifo * fifo, __u8 * } /* we have a complete hdlc packet */ if (finish) { - if ((!fifo->skbuff->data[fifo->skbuff->len - 1]) - && (fifo->skbuff->len > 3)) { + if (fifo->skbuff->len > 3 && + !fifo->skbuff->data[fifo->skbuff->len - 1]) { if (fifon == HFCUSB_D_RX) { DBG(HFCUSB_DBG_DCHANNEL,
_