Skip site navigation (1)Skip section navigation (2)
Date:      Wed, 31 May 2006 11:21:46 -0700
From:      Brooks Davis <brooks@one-eyed-alien.net>
To:        Florent Thoumie <flz@freebsd.org>
Cc:        Christopher Nelson <paradox@BBHC.ORG>, freebsd-rc@freebsd.org
Subject:   Re: conf/97301: infinite loop on boot when network_interfaces set to nonexistent interface in rc.conf
Message-ID:  <20060531182146.GC20044@odin.ac.hmc.edu>
In-Reply-To: <1149089131.91276.37.camel@mayday.esat.net>
References:  <200605311440.k4VEeJsu051493@freefall.freebsd.org> <1149089131.91276.37.camel@mayday.esat.net>

next in thread | previous in thread | raw e-mail | index | archive | help

--Sr1nOIr3CvdE5hEN
Content-Type: text/plain; charset=us-ascii
Content-Disposition: inline
Content-Transfer-Encoding: quoted-printable

On Wed, May 31, 2006 at 04:25:31PM +0100, Florent Thoumie wrote:
> On Wed, 2006-05-31 at 14:40 +0000, Christopher Nelson wrote:
> =20
> >  Duh.  I knew that.  The bug was not submitted because I thought that I
> >  had the separator correct.  The bug was submitted because just having =
an
> >  incorrect separator should NOT cause the entire system to get stuck in
> >  an infinite loop on startup.  That behavior is WAY too pathological for
> >  such a minor mistake.
>=20
> That wasn't really clear since you talked about non-existent
> interfaces. /etc/rc.d/netif is perfectly happy with them.
>=20
> We could 's/[^a-z0-9 ]/ /g' but sed isn't available at that time and I
> don't feel like maintaining a list of wrong separators to use with
> ltr().

IMO we should make two changes here.  First, if network_interfaces
is not set to "auto" we should issue a warning when rc.d/netif
is run indicating that doing so is deprecated.  Second, in the
list_net_interfaces function in network.subr we should verify that each
entry is valid and fail with an error message and "exit 1" if it isn't.
That will cause the system to not boot when misconfigured, but that's OK
with me since I think we should kill off this variable entirely and thus
I don't think it's worth any more effort to handle errors while we wait
for a good time to finish it off.  The only reason I haven't killed in
in HEAD is that I haven't figured out how to refactor rc.conf(5) without
the network_interfaces variable to hang all the configuration stuff off
of.

-- Brooks

--=20
Any statement of the form "X is the one, true Y" is FALSE.
PGP fingerprint 655D 519C 26A7 82E7 2529  9BF0 5D8E 8BE9 F238 1AD4

--Sr1nOIr3CvdE5hEN
Content-Type: application/pgp-signature
Content-Disposition: inline

-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.2.1 (GNU/Linux)

iD8DBQFEfd66XY6L6fI4GtQRAhKoAJ9U/dolM1Evx0yRybbGTyfhUGarkACfe80o
vgV0WnTFDJ2J9Hhs9PupbYA=
=0Rap
-----END PGP SIGNATURE-----

--Sr1nOIr3CvdE5hEN--



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?20060531182146.GC20044>