summaryrefslogtreecommitdiffstats
path: root/usr.bin/mkimg
diff options
context:
space:
mode:
authormarcel <marcel@FreeBSD.org>2014-05-21 17:39:49 +0000
committermarcel <marcel@FreeBSD.org>2014-05-21 17:39:49 +0000
commit12d9d80011126926f1ca0cc86990a22ac1d3da84 (patch)
tree4d096354eb504303b95cc6f5c5e0d8abccedb27d /usr.bin/mkimg
parent92a68a85011c4363508742c690180a02d6b07aa7 (diff)
downloadFreeBSD-src-12d9d80011126926f1ca0cc86990a22ac1d3da84.zip
FreeBSD-src-12d9d80011126926f1ca0cc86990a22ac1d3da84.tar.gz
Fix CID 1204379 (vtoc8.c) & CID 1204380 (bsd.c): Cast ncyls to lba_t
before multiplying the 32-bit integrals to avoid any possibility of truncation before widening. Not a likely scenario to begin with...
Diffstat (limited to 'usr.bin/mkimg')
-rw-r--r--usr.bin/mkimg/bsd.c2
-rw-r--r--usr.bin/mkimg/vtoc8.c2
2 files changed, 2 insertions, 2 deletions
diff --git a/usr.bin/mkimg/bsd.c b/usr.bin/mkimg/bsd.c
index a93ed0d..03af5cd 100644
--- a/usr.bin/mkimg/bsd.c
+++ b/usr.bin/mkimg/bsd.c
@@ -80,7 +80,7 @@ bsd_write(lba_t imgsz, void *bootcode)
} else
memset(buf, 0, BBSIZE);
- imgsz = ncyls * nheads * nsecs;
+ imgsz = (lba_t)ncyls * nheads * nsecs;
error = image_set_size(imgsz);
if (error) {
free(buf);
diff --git a/usr.bin/mkimg/vtoc8.c b/usr.bin/mkimg/vtoc8.c
index 05a3ce8..8eb7d24 100644
--- a/usr.bin/mkimg/vtoc8.c
+++ b/usr.bin/mkimg/vtoc8.c
@@ -71,7 +71,7 @@ vtoc8_write(lba_t imgsz, void *bootcode __unused)
int error, n;
uint16_t ofs, sum;
- imgsz = ncyls * nheads * nsecs;
+ imgsz = (lba_t)ncyls * nheads * nsecs;
memset(&vtoc8, 0, sizeof(vtoc8));
sprintf(vtoc8.ascii, "FreeBSD%lldM",
OpenPOWER on IntegriCloud