From owner-freebsd-rc@FreeBSD.ORG Fri Feb 23 06:56:46 2007 Return-Path: X-Original-To: freebsd-rc@freebsd.org Delivered-To: freebsd-rc@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [69.147.83.52]) by hub.freebsd.org (Postfix) with ESMTP id A7DA616A400; Fri, 23 Feb 2007 06:56:46 +0000 (UTC) (envelope-from brooks@lor.one-eyed-alien.net) Received: from lor.one-eyed-alien.net (grnl-static-02-0046.dsl.iowatelecom.net [69.66.56.110]) by mx1.freebsd.org (Postfix) with ESMTP id 4BEF113C442; Fri, 23 Feb 2007 06:56:46 +0000 (UTC) (envelope-from brooks@lor.one-eyed-alien.net) Received: from lor.one-eyed-alien.net (localhost [127.0.0.1]) by lor.one-eyed-alien.net (8.13.8/8.13.8) with ESMTP id l1N6uiMA094418; Fri, 23 Feb 2007 00:56:44 -0600 (CST) (envelope-from brooks@lor.one-eyed-alien.net) Received: (from brooks@localhost) by lor.one-eyed-alien.net (8.13.8/8.13.8/Submit) id l1N6uiLA094417; Fri, 23 Feb 2007 00:56:44 -0600 (CST) (envelope-from brooks) Date: Fri, 23 Feb 2007 00:56:44 -0600 From: Brooks Davis To: Vasil Dimov Message-ID: <20070223065644.GA94159@lor.one-eyed-alien.net> References: <20070222172658.GA40593@qlovarnika.bg.datamax> <20070222222526.GA90840@lor.one-eyed-alien.net> <20070223063428.GA96292@qlovarnika.bg.datamax> Mime-Version: 1.0 Content-Type: multipart/signed; micalg=pgp-sha1; protocol="application/pgp-signature"; boundary="n8g4imXOkfNTN/H1" Content-Disposition: inline In-Reply-To: <20070223063428.GA96292@qlovarnika.bg.datamax> User-Agent: Mutt/1.5.11 X-Greylist: Sender IP whitelisted, not delayed by milter-greylist-3.0 (lor.one-eyed-alien.net [127.0.0.1]); Fri, 23 Feb 2007 00:56:44 -0600 (CST) Cc: Brooks Davis , freebsd-rc@freebsd.org Subject: Re: Setting rc scripts default values X-BeenThere: freebsd-rc@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: "Discussion related to /etc/rc.d design and implementation." List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 23 Feb 2007 06:56:46 -0000 --n8g4imXOkfNTN/H1 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline Content-Transfer-Encoding: quoted-printable On Fri, Feb 23, 2007 at 08:34:28AM +0200, Vasil Dimov wrote: > On Thu, Feb 22, 2007 at 16:25:26 -0600, Brooks Davis wrote: > > On Thu, Feb 22, 2007 at 07:26:58PM +0200, Vasil Dimov wrote: > > > Hi, > > >=20 > > > Is there any special reason to write the rc scripts this way: > > >=20 > > > load_rc_config "$name" > > > : ${rsyncd_enable=3D"NO"} > > >=20 > > > instead of this way: > > >=20 > > > rsyncd_enable=3D"NO" > > > load_rc_config "$name" > > >=20 > > > apache does it this way: > > >=20 > > > apache_enable=3D${apache_enable-"NO"} > > > load_rc_config $name > > >=20 > > > but I think it can safely be changed to > > >=20 > > > apache_enable=3D"NO" > > > load_rc_config $name > > >=20 > > > What did I miss... > >=20 > > load_rc_config doesn't reread /etc/rc.conf every time. >=20 > Hmmz, I see that load_rc_config() does not reread /etc/rc.conf only if > _rc_conf_loaded is set. The only place where _rc_conf_loaded is set is > in load_rc_config() itself after it reads /etc/rc.conf. load_rc_config() > is not called anywhere in rc.subr [1]. >=20 > Can you show me a scenario where this code: >=20 > . /etc/rc.subr > rcvar=3D`set_rcvar` > foo_enable=3D"NO" > load_rc_config ${name} # foo_enable=3D"YES" is in /etc/rc.conf >=20 > ends up with foo_enable=3D"NO"? >=20 > Thanks. load_rc_config is called from /etc/rc before any scripts are run on startup. If that doesn't result in _rc_conf_loaded being set in the script, the code is useless and should be ripped out (I'm not entierly sure it isn't useless, but it's late here and I'm not going to test it now). -- Brooks --n8g4imXOkfNTN/H1 Content-Type: application/pgp-signature Content-Disposition: inline -----BEGIN PGP SIGNATURE----- Version: GnuPG v1.4.6 (FreeBSD) iD8DBQFF3pArXY6L6fI4GtQRAtXdAKCLsr+/admCKTBVmKDkM0cUMb7A0gCfTARs Ca1kkhbYPo/f8MSHjJdsaGg= =YgOs -----END PGP SIGNATURE----- --n8g4imXOkfNTN/H1--