rc.subr / rc.d/sshd patch for review

Florent Thoumie flz at xbsd.org
Sat Mar 25 11:07:22 UTC 2006


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 at FreeBSD.org
FreeBSD Committer




More information about the freebsd-rc mailing list