Use reallocarray() in a few places in sys.
Index: sys/arch/hppa/stand/mkboot/mkboot.c
===================================================================
RCS file: /cvs/src/sys/arch/hppa/stand/mkboot/mkboot.c,v
retrieving revision 1.18
diff -u -p -d -r1.18 mkboot.c
--- sys/arch/hppa/stand/mkboot/mkboot.c 22 Jan 2014 09:18:04 -0000 1.18
+++ sys/arch/hppa/stand/mkboot/mkboot.c 22 Jul 2014 01:11:23 -0000
@@ -204,10 +204,11 @@ putfile(char *from_file, int to)
if (n != sizeof (elf_header))
err(1, "%s: reading ELF header", from_file);
header_count = ntohs(elf_header.e_phnum);
- memory_needed = header_count * sizeof (*elf_segments);
- elf_segments = malloc(memory_needed);
+ elf_segments = reallocarray(NULL, header_count,
+ sizeof(*elf_segments));
if (elf_segments == NULL)
err(1, "malloc");
+ memory_needed = header_count * sizeof(*elf_segments);
(void) lseek(from, ntohl(elf_header.e_phoff), SEEK_SET);
n = read(from, elf_segments, memory_needed);
if (n != memory_needed)
Index: sys/arch/hppa64/stand/mkboot/mkboot.c
===================================================================
RCS file: /cvs/src/sys/arch/hppa64/stand/mkboot/mkboot.c,v
retrieving revision 1.4
diff -u -p -d -r1.4 mkboot.c
--- sys/arch/hppa64/stand/mkboot/mkboot.c 22 Jan 2014 09:26:55 -0000
1.4
+++ sys/arch/hppa64/stand/mkboot/mkboot.c 22 Jul 2014 01:11:24 -0000
@@ -204,10 +204,11 @@ putfile(char *from_file, int to)
if (n != sizeof (elf_header))
err(1, "%s: reading ELF header", from_file);
header_count = betoh32(elf_header.e_phnum);
- memory_needed = header_count * sizeof (*elf_segments);
- elf_segments = malloc(memory_needed);
+ elf_segments = reallocarray(NULL, header_count,
+ sizeof(*elf_segments));
if (elf_segments == NULL)
err(1, "malloc");
+ memory_needed = header_count * sizeof(*elf_segments);
(void) lseek(from, betoh32(elf_header.e_phoff), SEEK_SET);
n = read(from, elf_segments, memory_needed);
if (n != memory_needed)
Index: sys/dev/microcode/bwi/extract/extract.c
===================================================================
RCS file: /cvs/src/sys/dev/microcode/bwi/extract/extract.c,v
retrieving revision 1.3
diff -u -p -d -r1.3 extract.c
--- sys/dev/microcode/bwi/extract/extract.c 12 Jul 2014 19:01:49 -0000
1.3
+++ sys/dev/microcode/bwi/extract/extract.c 22 Jul 2014 01:14:43 -0000
@@ -53,7 +53,7 @@ main(int argc, char *argv[])
nfiles = ntohl(nfiles);
/* allocate space for header struct */
- if ((h = malloc(nfiles * sizeof(*h))) == NULL)
+ if ((h = reallocarray(NULL, nfiles, sizeof(*h))) == NULL)
err(1, "malloc");
for (i = 0; i < nfiles; i++) {
if ((h[i] = malloc(sizeof(struct header))) == NULL)