mtg: docg3: potential divide by zero in doc_write_oob()

If we set oobdelta to zero then we will either return -EINVAL or hit
a divide (modulus) by zero on the next line when we check
"(ooblen % oobdelta)".  It's better to just return -EINVAL here instead.

Signed-off-by: Dan Carpenter <dan.carpenter@oracle.com>
Acked-by: Robert Jarzmik <robert.jarzmik@free.fr>
Signed-off-by: Artem Bityutskiy <artem.bityutskiy@linux.intel.com>
This commit is contained in:
Dan Carpenter 2012-11-29 17:16:51 +03:00 committed by Artem Bityutskiy
parent ecfe57b796
commit 6c810f9014
1 changed files with 1 additions and 1 deletions

View File

@ -1440,7 +1440,7 @@ static int doc_write_oob(struct mtd_info *mtd, loff_t ofs,
oobdelta = mtd->ecclayout->oobavail; oobdelta = mtd->ecclayout->oobavail;
break; break;
default: default:
oobdelta = 0; return -EINVAL;
} }
if ((len % DOC_LAYOUT_PAGE_SIZE) || (ooblen % oobdelta) || if ((len % DOC_LAYOUT_PAGE_SIZE) || (ooblen % oobdelta) ||
(ofs % DOC_LAYOUT_PAGE_SIZE)) (ofs % DOC_LAYOUT_PAGE_SIZE))