drivers/char/rio/rioctrl.c: off by one error in rioctrl.c
If DownLoad.ProductCode == MAX_PRODUCT, that would be a problem when we do RIOBootTable[DownLoad.ProductCode] a couple lines down. Found by smatch (http://repo.or.cz/w/smatch.git). Signed-off-by: Dan Carpenter <error27@gmail.com> Cc: Jiri Slaby <jirislaby@gmail.com> Cc: Alan Cox <alan@lxorguk.ukuu.org.uk> Signed-off-by: Andrew Morton <akpm@linux-foundation.org> Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
This commit is contained in:
parent
ae21cf9248
commit
459ca8b4ed
|
@ -873,7 +873,7 @@ int riocontrol(struct rio_info *p, dev_t dev, int cmd, unsigned long arg, int su
|
||||||
/*
|
/*
|
||||||
** It is important that the product code is an unsigned object!
|
** It is important that the product code is an unsigned object!
|
||||||
*/
|
*/
|
||||||
if (DownLoad.ProductCode > MAX_PRODUCT) {
|
if (DownLoad.ProductCode >= MAX_PRODUCT) {
|
||||||
rio_dprintk(RIO_DEBUG_CTRL, "RIO_DOWNLOAD: Bad product code %d passed\n", DownLoad.ProductCode);
|
rio_dprintk(RIO_DEBUG_CTRL, "RIO_DOWNLOAD: Bad product code %d passed\n", DownLoad.ProductCode);
|
||||||
p->RIOError.Error = NO_SUCH_PRODUCT;
|
p->RIOError.Error = NO_SUCH_PRODUCT;
|
||||||
return -ENXIO;
|
return -ENXIO;
|
||||||
|
|
Loading…
Reference in a new issue