From owner-freebsd-current@FreeBSD.ORG Sat May 12 16:43:30 2007 Return-Path: X-Original-To: freebsd-current@freebsd.org Delivered-To: freebsd-current@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [69.147.83.52]) by hub.freebsd.org (Postfix) with ESMTP id E2C0816A400 for ; Sat, 12 May 2007 16:43:30 +0000 (UTC) (envelope-from Yuriy.Tsibizov@gfk.ru) Received: from mx2.gfk.ru (mx2.gfk.ru [84.21.231.139]) by mx1.freebsd.org (Postfix) with ESMTP id 6914813C458 for ; Sat, 12 May 2007 16:43:30 +0000 (UTC) (envelope-from Yuriy.Tsibizov@gfk.ru) Received: from ex.hhp.local by mx2.gfk.ru (MDaemon PRO v9.5.6) with ESMTP id md50000071096.msg for ; Sat, 12 May 2007 20:45:41 +0400 Received: from dialup-chibis.gfk.ru ([10.0.6.45]) by ex.hhp.local with Microsoft SMTPSVC(6.0.3790.1830); Sat, 12 May 2007 20:45:37 +0400 Date: Sat, 12 May 2007 20:43:16 +0400 (MSD) From: Yuriy Tsibizov X-X-Sender: chibis@free.home.local To: Stefan Farfeleder In-Reply-To: <20070512071231.GB944@lizard.fafoe.narf.at> Message-ID: <20070512201809.F944@free.home.local> References: <20070509125720.U911@free.home.local> <20070512104053.J943@free.home.local> <20070512071231.GB944@lizard.fafoe.narf.at> MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII; format=flowed X-OriginalArrivalTime: 12 May 2007 16:45:38.0116 (UTC) FILETIME=[F81F1840:01C794B4] X-Spam-Processed: mx2.gfk.ru, Sat, 12 May 2007 20:45:41 +0400 (not processed: message from valid local sender) X-MDRemoteIP: 10.0.0.30 X-Return-Path: Yuriy.Tsibizov@gfk.ru X-Envelope-From: Yuriy.Tsibizov@gfk.ru X-MDaemon-Deliver-To: freebsd-current@freebsd.org X-MDAV-Processed: mx2.gfk.ru, Sat, 12 May 2007 20:45:41 +0400 Cc: freebsd-current@freebsd.org Subject: Re: geom_label problems when MS-DOS FS label is blank (all spaces) X-BeenThere: freebsd-current@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: Discussions about the use of FreeBSD-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sat, 12 May 2007 16:43:31 -0000 On Sat, 12 May 2007, Stefan Farfeleder wrote: > On Sat, May 12, 2007 at 10:51:25AM +0400, Yuriy Tsibizov wrote: >>> In this situation libdisk can't parse kern.geom.conftxt and sysinstall >>> exits with BARF 171 message. >> >> It can be fixed with following patch. "all spaces" volume will be treated >> like a volume without label. >> >> Index: g_label_msdosfs.c >> =================================================================== >> RCS file: /home/ncvs/src/sys/geom/label/g_label_msdosfs.c,v >> retrieving revision 1.6 >> diff -u -r1.6 g_label_msdosfs.c >> --- g_label_msdosfs.c 30 Sep 2006 08:16:49 -0000 1.6 >> +++ g_label_msdosfs.c 12 May 2007 06:39:23 -0000 >> @@ -200,7 +200,7 @@ >> } >> >> endofchecks: >> - for (i = size - 1; i > 0; i--) { >> + for (i = size - 1; i >= 0; i--) { >> if (label[i] == '\0') >> continue; >> else if (label[i] == ' ') > > This won't work because i is unsigned. Ok, I see that this patch is not correct. Do you like this one? Index: g_label_msdosfs.c =================================================================== RCS file: /home/ncvs/src/sys/geom/label/g_label_msdosfs.c,v retrieving revision 1.6 diff -u -r1.6 g_label_msdosfs.c --- g_label_msdosfs.c 30 Sep 2006 08:16:49 -0000 1.6 +++ g_label_msdosfs.c 12 May 2007 13:37:06 -0000 @@ -208,6 +208,8 @@ else break; } + if (label[i] == ' ') + label[i] = '\0'; error: if (sector0 != NULL) (there is no need to check for i == 0, because label[i] is not equal to ' ' if i > 0 after for() loop) Yuriy.