[PATCH] fix unlikely NULL pointer deref in kallsyms

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



The Coverity checker noticed that kallsyms may dereference a NULL pointer 
(in two places) in the function write_src() if malloc() fails.
In addition, malloc() returns a void*, so there's no need to cast the 
return value.

The amount requested is small, so this is unlikely to happen, but not 
impossible.

To fix the problem, if malloc() should fail, print a descriptive error and 
exit.
A lot better than just dereferencing a NULL pointer and crashing.

This fixes coverity bug #398


Signed-off-by: Jesper Juhl <[email protected]>
---

 scripts/kallsyms.c |    7 ++++++-
 1 files changed, 6 insertions(+), 1 deletion(-)

--- linux-2.6.16-rc5-git12-orig/scripts/kallsyms.c	2006-01-03 04:21:10.000000000 +0100
+++ linux-2.6.16-rc5-git12/scripts/kallsyms.c	2006-03-09 22:41:17.000000000 +0100
@@ -272,7 +272,12 @@ static void write_src(void)
 
 	/* table of offset markers, that give the offset in the compressed stream
 	 * every 256 symbols */
-	markers = (unsigned int *) malloc(sizeof(unsigned int) * ((table_cnt + 255) / 256));
+	markers = malloc(sizeof(unsigned int) * ((table_cnt + 255) / 256));
+	if (!markers) {
+		fprintf(stderr, "kallsyms failure: "
+			"unable to allocate required memory\n");
+		exit(EXIT_FAILURE);
+	}
 
 	output_label("kallsyms_names");
 	off = 0;



-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to [email protected]
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/

[Index of Archives]     [Kernel Newbies]     [Netfilter]     [Bugtraq]     [Photo]     [Stuff]     [Gimp]     [Yosemite News]     [MIPS Linux]     [ARM Linux]     [Linux Security]     [Linux RAID]     [Video 4 Linux]     [Linux for the blind]     [Linux Resources]
  Powered by Linux