From: "Brian Norris" <computersforpeace@gmail.com>
To: linux-mtd@lists.infradead.org
Cc: Brian Norris <computersforpeace@gmail.com>,
Jehan Bing <jehan@orb.com>, David Woodhouse <dwmw2@infradead.org>,
Mike Frysinger <vapier.adi@gmail.com>,
Artem Bityutskiy <dedekind1@gmail.com>
Subject: [PATCH 08/10] mtd-utils: nandwrite: prevent 32-bit overflow
Date: Wed, 3 Nov 2010 01:27:25 -0700 [thread overview]
Message-ID: <1288772847-8120-8-git-send-email-computersforpeace@gmail.com> (raw)
In-Reply-To: <1288772847-8120-1-git-send-email-computersforpeace@gmail.com>
For large block- and page-sizes, the multiplication of ebsize_aligned
and pagelen can overflow a 32-bit integer. This overflow can be
prevented by a simple change in order of operations (i.e., do division
first).
Since ebsize_aligned is always a multiple of mtd.min_io_size, this
produces no change in results.
Signed-off-by: Brian Norris <computersforpeace@gmail.com>
---
nandwrite.c | 2 +-
1 files changed, 1 insertions(+), 1 deletions(-)
diff --git a/nandwrite.c b/nandwrite.c
index 8ec5afe..364acdf 100644
--- a/nandwrite.c
+++ b/nandwrite.c
@@ -441,7 +441,7 @@ int main(int argc, char * const argv[])
}
// Allocate a buffer big enough to contain all the data (OOB included) for one eraseblock
- filebuf_max = pagelen * ebsize_aligned / mtd.min_io_size;
+ filebuf_max = ebsize_aligned / mtd.min_io_size * pagelen;
filebuf = xmalloc(filebuf_max);
erase_buffer(filebuf, filebuf_max);
--
1.7.0.4
next prev parent reply other threads:[~2010-11-03 8:30 UTC|newest]
Thread overview: 28+ messages / expand[flat|nested] mbox.gz Atom feed top
2010-11-03 8:27 [PATCH 01/10] mtd-utils: nanddump: Allow 64-bit lengths Brian Norris
2010-11-03 8:27 ` [PATCH 02/10] mtd-utils: nandwrite: Comment, style fixups Brian Norris
2010-11-03 8:27 ` [PATCH 03/10] mtd-utils: nandwrite: Clarify usage of aligned "erasesize" Brian Norris
2010-11-03 8:27 ` [PATCH 04/10] mtd-utils: nandwrite: switch "oobsize" for "writesize" Brian Norris
2010-11-03 8:27 ` [PATCH 05/10] mtd-utils: nandwrite: Use libmtd to get correct mtd parameters Brian Norris
2010-11-03 8:27 ` [PATCH 06/10] mtd-utils: nandwrite: Use 64-bit offset Brian Norris
2010-11-13 11:48 ` Artem Bityutskiy
2010-11-13 22:45 ` Mike Frysinger
2010-11-14 7:49 ` Artem Bityutskiy
2010-11-03 8:27 ` [PATCH 07/10] mtd-utils: nandwrite: avoid NULL buffer pointers Brian Norris
2010-11-03 8:27 ` Brian Norris [this message]
2010-11-09 9:48 ` [PATCH 08/10] mtd-utils: nandwrite: prevent 32-bit overflow Mike Frysinger
2010-11-11 6:31 ` [PATCH v2 " Brian Norris
2010-11-09 12:20 ` [PATCH " Artem Bityutskiy
2010-11-03 8:27 ` [PATCH 09/10] mtd-utils: nanddump: type consistency Brian Norris
2010-11-09 9:51 ` Mike Frysinger
2010-11-09 18:19 ` Brian Norris
2010-11-10 0:00 ` Mike Frysinger
2010-11-11 6:39 ` [PATCH v2 09/10] mtd-utils: nandwrite: full 64-bit support w/ libmtd Brian Norris
2010-11-13 11:53 ` Artem Bityutskiy
2010-11-16 17:06 ` Brian Norris
2010-11-16 19:57 ` Mike Frysinger
2010-11-11 6:39 ` [PATCH v2 10/10] mtd-utils: nandwrite: type consistency Brian Norris
2010-11-03 8:27 ` [PATCH 10/10] mtd-utils: nandwrite: full 64-bit support w/ libmtd Brian Norris
2010-11-09 9:54 ` [PATCH 01/10] mtd-utils: nanddump: Allow 64-bit lengths Mike Frysinger
2010-11-13 11:31 ` Artem Bityutskiy
2010-11-13 11:37 ` Artem Bityutskiy
2010-11-13 11:55 ` Artem Bityutskiy
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=1288772847-8120-8-git-send-email-computersforpeace@gmail.com \
--to=computersforpeace@gmail.com \
--cc=dedekind1@gmail.com \
--cc=dwmw2@infradead.org \
--cc=jehan@orb.com \
--cc=linux-mtd@lists.infradead.org \
--cc=vapier.adi@gmail.com \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).