public inbox for gentoo-commits@lists.gentoo.org
 help / color / mirror / Atom feed
* [gentoo-commits] gentoo-x86 commit in sys-fs/mdadm/files: mdadm-3.0.2-fix-null-dereference-in-set_member_info.patch
@ 2009-10-05  8:00 Mike Frysinger (vapier)
  0 siblings, 0 replies; only message in thread
From: Mike Frysinger (vapier) @ 2009-10-05  8:00 UTC (permalink / raw
  To: gentoo-commits

vapier      09/10/05 08:00:47

  Added:               
                        mdadm-3.0.2-fix-null-dereference-in-set_member_info.patch
  Log:
  Add fix from upstream for segfault #287338 by Marcin Mirosław.
  (Portage version: 2.2_rc42/cvs/Linux x86_64)

Revision  Changes    Path
1.1                  sys-fs/mdadm/files/mdadm-3.0.2-fix-null-dereference-in-set_member_info.patch

file : http://sources.gentoo.org/viewcvs.py/gentoo-x86/sys-fs/mdadm/files/mdadm-3.0.2-fix-null-dereference-in-set_member_info.patch?rev=1.1&view=markup
plain: http://sources.gentoo.org/viewcvs.py/gentoo-x86/sys-fs/mdadm/files/mdadm-3.0.2-fix-null-dereference-in-set_member_info.patch?rev=1.1&content-type=text/plain

Index: mdadm-3.0.2-fix-null-dereference-in-set_member_info.patch
===================================================================
http://bugs.gentoo.org/287338

From 2b9aa337af7291d3f141322da96c9f667c99d53c Mon Sep 17 00:00:00 2001
From: NeilBrown <neilb@suse.de>
Date: Thu, 1 Oct 2009 12:51:04 +1000
Subject: [PATCH] Fix null-dereference in set_member_info

set_member_info would try to dereference ->metadata_version, without
checking that it isn't NULL.

Signed-off-by: NeilBrown <neilb@suse.de>
---
 mapfile.c |   15 +++++++++------
 1 files changed, 9 insertions(+), 6 deletions(-)

diff --git a/mapfile.c b/mapfile.c
index a3038be..ed59db5 100644
--- a/mapfile.c
+++ b/mapfile.c
@@ -303,19 +303,22 @@ struct map_ent *map_by_name(struct map_ent **map, char *name)
  */
 static void set_member_info(struct supertype *st, struct mdstat_ent *ent)
 {
-	char version[strlen(ent->metadata_version)+1];
 
 	st->subarray[0] = '\0';
 
-	if (strncmp(ent->metadata_version, "external:", 9) != 0)
+	if (ent->metadata_version == NULL ||
+	    strncmp(ent->metadata_version, "external:", 9) != 0)
 		return;
 
-	strcpy(version, ent->metadata_version);
-
-	if (is_subarray(&version[9])) {
-		char *subarray = strrchr(version, '/');
+	if (is_subarray(&ent->metadata_version[9])) {
+		char version[strlen(ent->metadata_version)+1];
+		char *subarray;
 		char *name = &version[10];
 
+		strcpy(version, ent->metadata_version);
+		subarray = strrchr(version, '/');
+		name = &version[10];
+
 		if (!subarray)
 			return;
 		*subarray++ = '\0';
-- 
1.6.5.rc2







^ permalink raw reply related	[flat|nested] only message in thread

only message in thread, other threads:[~2009-10-05  8:00 UTC | newest]

Thread overview: (only message) (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2009-10-05  8:00 [gentoo-commits] gentoo-x86 commit in sys-fs/mdadm/files: mdadm-3.0.2-fix-null-dereference-in-set_member_info.patch Mike Frysinger (vapier)

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox