drivers/ide/pci/cs5535.c: array overrun

Adrian Bunk
2007-07-24T12:46:18Z

The Coverity checker spotted the following array overrun in
drivers/ide/pci/cs5535.c:

<-- snip -->

...
static unsigned int cs5535_udma_timings[5] =
{ 0x7F7436A1, 0x7F733481, 0x7F723261, 0x7F713161, 0x7F703061 };
...
static void cs5535_set_speed(ide_drive_t *drive, u8 speed)
{
...
if (speed >= XFER_UDMA_0 && speed <= XFER_UDMA_7)
reg |= cs5535_udma_timings[speed - XFER_UDMA_0];
...

<-- snip -->

XFER_UDMA_7 - XFER_UDMA_0 = 7 > (5 - 1)

cu
Adrian

--

"Is there not promise of rain?" Ling Tan asked suddenly out
of the darkness. There had been need of rain for many days.
"Only a promise," Lao Er said.
Pearl S. Buck - Dragon Seed