2bb58e1702
BEFORE: syslogd. This does not produce any change in the ordering at the moment, but is cleaner style for the long term.
70 lines
1.4 KiB
Bash
Executable File
70 lines
1.4 KiB
Bash
Executable File
#!/bin/sh
|
|
#
|
|
# $NetBSD: syslogd,v 1.12 2002/03/22 04:34:00 thorpej Exp $
|
|
# $FreeBSD$
|
|
#
|
|
|
|
# PROVIDE: syslogd
|
|
# REQUIRE: mountcritremote cleanvar newsyslog
|
|
# BEFORE: SERVERS
|
|
|
|
. /etc/rc.subr
|
|
|
|
name="syslogd"
|
|
rcvar=`set_rcvar`
|
|
pidfile="/var/run/syslog.pid"
|
|
command="/usr/sbin/${name}"
|
|
required_files="/etc/syslog.conf"
|
|
start_precmd="syslogd_precmd"
|
|
extra_commands="reload"
|
|
|
|
_sockfile="/var/run/syslogd.sockets"
|
|
evalargs="rc_flags=\"\`set_socketlist\` \$rc_flags\""
|
|
altlog_proglist="named"
|
|
|
|
syslogd_precmd()
|
|
{
|
|
# Transitional symlink for old binaries
|
|
#
|
|
if [ ! -L /dev/log ]; then
|
|
ln -sf /var/run/log /dev/log
|
|
fi
|
|
rm -f /var/run/log
|
|
|
|
# Create default list of syslog sockets to watch
|
|
#
|
|
( umask 022 ; > $_sockfile )
|
|
|
|
# If running named(8) or ntpd(8) chrooted, added appropriate
|
|
# syslog socket to list of sockets to watch.
|
|
#
|
|
for _l in $altlog_proglist; do
|
|
eval _ldir=\$${_l}_chrootdir
|
|
if checkyesno `set_rcvar $_l` && [ -n "$_ldir" ]; then
|
|
echo "${_ldir}/var/run/log" >> $_sockfile
|
|
fi
|
|
done
|
|
|
|
# If other sockets have been provided, change run_rc_command()'s
|
|
# internal copy of $syslogd_flags to force use of specific
|
|
# syslogd sockets.
|
|
#
|
|
if [ -s $_sockfile ]; then
|
|
echo "/var/run/log" >> $_sockfile
|
|
eval $evalargs
|
|
fi
|
|
|
|
return 0
|
|
}
|
|
|
|
set_socketlist()
|
|
{
|
|
_socketargs=
|
|
for _s in `cat $_sockfile | tr '\n' ' '` ; do
|
|
_socketargs="-l $_s $_socketargs"
|
|
done
|
|
echo $_socketargs
|
|
}
|
|
load_rc_config $name
|
|
run_rc_command "$1"
|