Date: Sat, 25 Mar 2006 11:06:46 +0000 From: Florent Thoumie <flz@xbsd.org> To: Brooks Davis <brooks@one-eyed-alien.net> Cc: freebsd-rc@freebsd.org Subject: Re: rc.subr / rc.d/sshd patch for review Message-ID: <00E087F1-81E4-4580-A655-50F3DD8A471F@xbsd.org> In-Reply-To: <20060324205627.GA18100@odin.ac.hmc.edu> References: <1143202549.16053.145.camel@mayday.esat.net> <20060324205627.GA18100@odin.ac.hmc.edu>
next in thread | previous in thread | raw e-mail | index | archive | help
On Mar 24, 2006, at 8:56 PM, Brooks Davis wrote: > On Fri, Mar 24, 2006 at 12:15:49PM +0000, Florent Thoumie wrote: >> This is based on Oliver's patch for rc.d/sshd that can be found in >> Gnats. >> >> In load_rc_config, I'm extracting prefix from ${command} (or >> ${name}_program, which part is moved from run_rc_command), and >> setting >> etcdir accordingly. >> >> The point is that some scripts (like rc.d/sshd) can be used for base >> sshd as well as ports sshd, and makes possible to source >> ${prefix}/etc/rc.conf.d/${name}. >> >> This patch also documents ${name}_program above run_rc_command >> (though >> it's actually used in load_rc_config). > > Is command always set? I'm pretty sure it isn't so this may not be > entierly > safe. If it's not set, should we try to guess prefix from $0? Somehow, command gets set to the right value, but you're right, I'm missing a bit here. > The other issue I see is that instead of: > > if [ -f ${etcdir}/rc.conf.d/"$_command" ]; then > debug "Sourcing ${etcdir}/rc.conf.d/${_command}" > . ${etcdir}/rc.conf.d/"$_command" > fi > > I think we should do: > > if [ -f /etc/rc.conf.d/"$_command" ]; then > debug "Sourcing /etc/rc.conf.d/${_command}" > . /etc/rc.conf.d/"$_command" > fi > if [ "${etcdir}" != "/etc" -a -f ${etcdir}/ > rc.conf.d/"$_command" ]; then > debug "Sourcing ${etcdir}/rc.conf.d/${_command}" > . ${etcdir}/rc.conf.d/"$_command" > fi > > That preserves the old behavior while adding support for > ${prefix}/etc/rc.conf.d. Fair enough, but I'd like to add a note saying that /etc/rc.conf.d/$ {name} is deprecated for ${etcdir} != "/etc". I'll write a new patch this week end. Thanks Brooks. -- Florent Thoumie flz@FreeBSD.org FreeBSD Committer
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?00E087F1-81E4-4580-A655-50F3DD8A471F>