xref: /minix3/etc/rc.d/syslogd (revision 325ce30bccba250bdfe2f52d4d341654683ad16f)
1*325ce30bSDavid van Moolenbroek#!/bin/sh
2*325ce30bSDavid van Moolenbroek#
3*325ce30bSDavid van Moolenbroek# $NetBSD: syslogd,v 1.15 2004/10/11 13:29:52 lukem Exp $
4*325ce30bSDavid van Moolenbroek#
5*325ce30bSDavid van Moolenbroek
6*325ce30bSDavid van Moolenbroek# PROVIDE: syslogd
7*325ce30bSDavid van Moolenbroek# REQUIRE: mountcritremote sysdb wscons
8*325ce30bSDavid van Moolenbroek# BEFORE:  SERVERS
9*325ce30bSDavid van Moolenbroek
10*325ce30bSDavid van Moolenbroek$_rc_subr_loaded . /etc/rc.subr
11*325ce30bSDavid van Moolenbroek
12*325ce30bSDavid van Moolenbroekname="syslogd"
13*325ce30bSDavid van Moolenbroekrcvar=$name
14*325ce30bSDavid van Moolenbroekcommand="/usr/sbin/${name}"
15*325ce30bSDavid van Moolenbroekpidfile="/var/run/${name}.pid"
16*325ce30bSDavid van Moolenbroekrequired_files="/etc/syslog.conf"
17*325ce30bSDavid van Moolenbroekstart_precmd="syslogd_precmd"
18*325ce30bSDavid van Moolenbroekextra_commands="reload"
19*325ce30bSDavid van Moolenbroek
20*325ce30bSDavid van Moolenbroek_sockfile="/var/run/syslogd.sockets"
21*325ce30bSDavid van Moolenbroek
22*325ce30bSDavid van Moolenbroeksyslogd_precmd()
23*325ce30bSDavid van Moolenbroek{
24*325ce30bSDavid van Moolenbroek	#	Transitional symlink for old binaries
25*325ce30bSDavid van Moolenbroek	#
26*325ce30bSDavid van Moolenbroek	# MINIX 3: unsupported, disabled
27*325ce30bSDavid van Moolenbroek	#if [ ! -h /dev/log ]; then
28*325ce30bSDavid van Moolenbroek	#	ln -sf /var/run/log /dev/log
29*325ce30bSDavid van Moolenbroek	#fi
30*325ce30bSDavid van Moolenbroek	# MINIX 3: end
31*325ce30bSDavid van Moolenbroek
32*325ce30bSDavid van Moolenbroek	#	Create default list of syslog sockets to watch
33*325ce30bSDavid van Moolenbroek	#
34*325ce30bSDavid van Moolenbroek	( umask 022 ; > $_sockfile )
35*325ce30bSDavid van Moolenbroek
36*325ce30bSDavid van Moolenbroek	#	Find /etc/rc.d scripts with "chrootdir" rcorder(8) keyword,
37*325ce30bSDavid van Moolenbroek	#	and if $${app}_chrootdir is a directory, add appropriate
38*325ce30bSDavid van Moolenbroek	#	syslog socket to list of sockets to watch.
39*325ce30bSDavid van Moolenbroek	#
40*325ce30bSDavid van Moolenbroek	for _lr in $(rcorder -k chrootdir /etc/rc.d/*); do
41*325ce30bSDavid van Moolenbroek	    (
42*325ce30bSDavid van Moolenbroek		_l=${_lr##*/}
43*325ce30bSDavid van Moolenbroek		load_rc_config ${_l}
44*325ce30bSDavid van Moolenbroek		eval _ldir=\$${_l}_chrootdir
45*325ce30bSDavid van Moolenbroek		if checkyesno $_l && [ -n "$_ldir" ]; then
46*325ce30bSDavid van Moolenbroek			echo "${_ldir}/var/run/log" >> $_sockfile
47*325ce30bSDavid van Moolenbroek		fi
48*325ce30bSDavid van Moolenbroek	    )
49*325ce30bSDavid van Moolenbroek	done
50*325ce30bSDavid van Moolenbroek
51*325ce30bSDavid van Moolenbroek	#	If other sockets have been provided, change run_rc_command()'s
52*325ce30bSDavid van Moolenbroek	#	internal copy of $syslogd_flags to force use of specific
53*325ce30bSDavid van Moolenbroek	#	syslogd sockets.
54*325ce30bSDavid van Moolenbroek	#
55*325ce30bSDavid van Moolenbroek	if [ -s $_sockfile ]; then
56*325ce30bSDavid van Moolenbroek		echo "/var/run/log" >> $_sockfile
57*325ce30bSDavid van Moolenbroek		rc_flags="-P $_sockfile $rc_flags"
58*325ce30bSDavid van Moolenbroek	fi
59*325ce30bSDavid van Moolenbroek
60*325ce30bSDavid van Moolenbroek	return 0
61*325ce30bSDavid van Moolenbroek}
62*325ce30bSDavid van Moolenbroek
63*325ce30bSDavid van Moolenbroekload_rc_config $name
64*325ce30bSDavid van Moolenbroekrun_rc_command "$1"
65