syslogd script bug?: syslogd_program= not honored

Florent Thoumie flz at xbsd.org
Tue Apr 4 09:51:15 UTC 2006


On Mon, 2006-04-03 at 16:43 -0700, Brooks Davis wrote:
> On Mon, Apr 03, 2006 at 06:57:44PM -0400, Bill Moran wrote:
> > 
> > It doesn't seem as if syslogd_program (in rc.conf) is honored.
> > 
> > To reproduce, install syslog-ng, then set the following in /etc/rc.conf:
> > syslogd_enable="YES"
> > syslogd_program="/usr/local/sbin/syslog-ng"
> > 
> > This does not result in syslog-ng starting - in fact, it seems as if
> > the FreeBSD syslogd is still started.
> > 
> > In my (unexpert) opinion, the problem is that /etc/rc.d/syslogd contains
> > the line:
> > command="/usr/sbin/${name}"
> > which seems atypical compared to other rc.d scripts.
> > 
> > I'm not sure if the rc.d/syslogd script can reliably start other syslog-
> > ish programs.  The syslogd_precmd() makes me wonder if this script would
> > be problematic starting anything but FreeBSD's syslogd.
> > 
> > There's definately an issue, since syslogd_program doesn't work as
> > advertised.  My question is whether it's a documentation issue (the
> > references to syslogd_program should be removed) or a bug in the
> > rc.d script.
> 
> It's a bug in the script. flz has patches that correct it by causing
> ${name}_program to unconditionally override command if both are set
> which fixes it in the infrastructure (along with other things).  Here's
> the latest:
> 
> http://people.freebsd.org/~flz/local/rc.d-merge-sshd.diff

Hum, my patch doesn't do anything like this actually.

I guess the problems comes from syslogd_flags being "-s"
in /etc/defaults/rc.conf. Setting syslogd_flags="" in /etc/rc.conf
should fix it.

I could remove the startup script installed by sysutils/syslog-ng and
tweak /etc/rc.d/syslogd to take required_files in account.

Will do this later.

-- 
Florent Thoumie
flz at FreeBSD.org
FreeBSD Committer



More information about the freebsd-rc mailing list