Subject: bin/36229: uninitialized dkwedge_info structure in mount_mfs causes random failures
To: None <gnats-admin@netbsd.org, netbsd-bugs@netbsd.org>
From: None <gcw@primenet.com.au>
List: netbsd-bugs
Date: 04/27/2007 06:45:00
>Number: 36229
>Category: bin
>Synopsis: uninitialized dkwedge_info structure in mount_mfs causes random failures
>Confidential: no
>Severity: serious
>Priority: medium
>Responsible: bin-bug-people
>State: open
>Class: sw-bug
>Submitter-Id: net
>Arrival-Date: Fri Apr 27 06:45:00 +0000 2007
>Originator: Geoff C. Wing
>Release: NetBSD 4.99.18
>Organization:
>Environment:
System: NetBSD g.primenet.com.au 4.99.18 NetBSD 4.99.18 (G) #0: Tue Apr 24 18:09:38 EST 2007 gcw@g.primenet.com.au:/usr/netbsd/src/sys/arch/i386/compile/G i386
Architecture: i386
Machine: i386
>Description:
A dkwedge_info structure in newfs is uninitialized when called as
mount_mfs
Later checks for valid structure are against *.dkw_parent[0] (a char)
being non-zero, so simple 0 fill of structure should suffice
>How-To-Repeat:
.
>Fix:
--- sbin/newfs/newfs.c.org 2006-11-26 19:39:17.000000000 +1100
+++ sbin/newfs/newfs.c 2007-04-27 15:20:23.000000000 +1000
@@ -425,6 +425,7 @@
usage();
memset(&sb, 0, sizeof sb);
+ memset(&dkw, 0, sizeof dkw);
special = argv[0];
if (Fflag || mfs) {
/*