Subject: bin/36325: wpa_supplicant=YES requires critical_filesystems_local=/usr
To: None <gnats-admin@netbsd.org, netbsd-bugs@netbsd.org>
From: Holger Weiss <holger@jhweiss.de>
List: netbsd-bugs
Date: 05/13/2007 22:35:00
>Number:         36325
>Category:       bin
>Synopsis:       wpa_supplicant=YES requires critical_filesystems_local=/usr
>Confidential:   no
>Severity:       non-critical
>Priority:       medium
>Responsible:    bin-bug-people
>State:          open
>Class:          change-request
>Submitter-Id:   net
>Arrival-Date:   Sun May 13 22:35:00 +0000 2007
>Originator:     Holger Weiss
>Release:        NetBSD 4.99.19
>Organization:
Individual Network Berlin e.V.
>Environment:
System: NetBSD pandora.jhweiss.de 4.99.19 NetBSD 4.99.19 (PANDORA) #2: Sun May 6 04:02:02 CEST 2007 holger@pandora.jhweiss.de:/usr/build/obj/sys/arch/i386/compile/PANDORA i386
Architecture: i386
Machine: i386
>Description:
If /usr (well, /usr/sbin) is not part of the root partition, running
wpa_supplicant(8) via rc(8) will fail silently unless /usr is added to
critical_filesystems_local:

$  rcorder /etc/rc.d/* | egrep '(wpa_supplicant|mount..)'
/etc/rc.d/mountcritlocal
/etc/rc.d/wpa_supplicant
/etc/rc.d/mountcritremote
/etc/rc.d/mountall
>How-To-Repeat:
Configure wpa_supplicant(8) via wpa_supplicant.conf(5) and appropriate
wpa_supplicant_flags.  Set wpa_supplicant=YES in /etc/rc.conf without
adding /usr to critical_filesystems_local.  Reboot.
>Fix:
I guess wpa_supplicant(8) should be moved to /sbin in order to allow for
using it on systems which actually _do_ mount /usr remotely.  If that's
not an option, IMO at least a comment should be added to rc.conf(5)
(similar to the comment regarding /var for dhclient).