vBulletin Search Engine Optimization
| |||||||
| Register | FAQ | Members List | Calendar | Search | Today's Posts | Mark Forums Read |
| ||||
| Hi, Here's the updated version against -current of my patches about missing {m,c,re}alloc return value check. A special note about lib/libc/crypt/skipjack.c: I know that it's bad to exit program from libc, but as subkey_table_gen can only return void, I don't know how to handle this better. Best regards, Charles Longeau Index: distrib/crunch/crunchide/elf_hide.c ================================================== ================= RCS file: /cvs/src/distrib/crunch/crunchide/elf_hide.c,v retrieving revision 1.10 diff -u -p -r1.10 elf_hide.c --- distrib/crunch/crunchide/elf_hide.c 23 Mar 2006 02:49:59 -0000 1.10 +++ distrib/crunch/crunchide/elf_hide.c 12 Nov 2006 19:21:41 -0000 @@ -385,6 +385,7 @@ reorder_syms(Elf_Ehdr * ehdr, Elf_Shdr * symmap = (Symmap *) calloc(nsyms, sizeof(Symmap)); assert(NULL != tmpsymtab); + assert(NULL != symmap); bcopy(symtab, tmpsymtab, symtabsize); Index: lib/libc/crypt/skipjack.c ================================================== ================= RCS file: /cvs/src/lib/libc/crypt/skipjack.c,v retrieving revision 1.3 diff -u -p -r1.3 skipjack.c --- lib/libc/crypt/skipjack.c 1 Oct 2004 04:08:45 -0000 1.3 +++ lib/libc/crypt/skipjack.c 15 Nov 2006 01:53:27 -0000 @@ -69,6 +69,9 @@ subkey_table_gen (u_int8_t *key, u_int8_ for (k = 0; k < 10; k++) { u_int8_t key_byte = key[k]; u_int8_t * table = (u_int8_t *) malloc(0x100); + if (table == NULL) + errx(1, "malloc"); + /* XXX */ key_tables[k] = table; Index: usr.bin/systat/netcmds.c ================================================== ================= RCS file: /cvs/src/usr.bin/systat/netcmds.c,v retrieving revision 1.17 diff -u -p -r1.17 netcmds.c --- usr.bin/systat/netcmds.c 20 Mar 2007 03:56:13 -0000 1.17 +++ usr.bin/systat/netcmds.c 20 Mar 2007 09:45:55 -0000 @@ -213,6 +213,8 @@ selectport(long port, int onoff) ports = (struct pitem *)malloc(sizeof (*p)); else ports = (struct pitem *)realloc(ports, (nports+1)*sizeof (*p)); + if (ports == NULL) + err(1, NULL); p = &ports[nports++]; p->port = port; p->onoff = onoff; @@ -299,6 +301,8 @@ selecthost(struct sockaddr *sa, int onof hosts = (struct hitem *)malloc(sizeof (*p)); else hosts = (struct hitem *)realloc(hosts, (nhosts+1)*sizeof (*p)); + if (hosts == NULL) + err(1, NULL); p = &hosts[nhosts++]; memcpy(&p->addr, sa, sa->sa_len); p->onoff = onoff; Index: usr.bin/vmstat/dkstats.c ================================================== ================= RCS file: /cvs/src/usr.bin/vmstat/dkstats.c,v retrieving revision 1.30 diff -u -p -r1.30 dkstats.c --- usr.bin/vmstat/dkstats.c 31 Mar 2006 18:19:38 -0000 1.30 +++ usr.bin/vmstat/dkstats.c 7 Mar 2007 08:17:18 -0000 @@ -256,6 +256,21 @@ dkreadstats(void) dk_ndrive * sizeof(*last.dk_wbytes)); last.dk_time = realloc(last.dk_time, dk_ndrive * sizeof(*last.dk_time)); + + if (cur.dk_select == NULL || + cur.dk_rxfer == NULL || + cur.dk_wxfer == NULL || + cur.dk_seek == NULL || + cur.dk_rbytes == NULL || + cur.dk_wbytes == NULL || + cur.dk_time == NULL || + last.dk_rxfer == NULL || + last.dk_wxfer == NULL || + last.dk_seek == NULL || + last.dk_rbytes == NULL || + last.dk_wbytes == NULL || + last.dk_time == NULL) + err(1, NULL); } else { cur.dk_select = realloc(cur.dk_select, dk_ndrive * sizeof(*cur.dk_select)); @@ -283,6 +298,21 @@ dkreadstats(void) dk_ndrive * sizeof(*last.dk_wbytes)); last.dk_time = realloc(last.dk_time, dk_ndrive * sizeof(*last.dk_time)); + + if (cur.dk_select == NULL || + cur.dk_rxfer == NULL || + cur.dk_wxfer == NULL || + cur.dk_seek == NULL || + cur.dk_rbytes == NULL || + cur.dk_wbytes == NULL || + cur.dk_time == NULL || + last.dk_rxfer == NULL || + last.dk_wxfer == NULL || + last.dk_seek == NULL || + last.dk_rbytes == NULL || + last.dk_wbytes == NULL || + last.dk_time == NULL) + err(1, NULL); for (i = dk_ndrive - 1, j = cur.dk_ndrive - 1; i >= 0; i--) { |