syslogd revision 1.14
11.1Slukem#!/bin/sh 21.1Slukem# 31.14Smycroft# $NetBSD: syslogd,v 1.14 2004/08/13 18:08:03 mycroft Exp $ 41.1Slukem# 51.1Slukem 61.1Slukem# PROVIDE: syslogd 71.7Slukem# REQUIRE: mountcritremote sysdb wscons 81.12Sthorpej# BEFORE: SERVERS 91.1Slukem 101.14Smycroft$_rc_subr_loaded . /etc/rc.subr 111.1Slukem 121.1Slukemname="syslogd" 131.7Slukemrcvar=$name 141.1Slukemcommand="/usr/sbin/${name}" 151.1Slukempidfile="/var/run/${name}.pid" 161.1Slukemrequired_files="/etc/syslog.conf" 171.1Slukemstart_precmd="syslogd_precmd" 181.2Slukemextra_commands="reload" 191.1Slukem 201.9Slukem_sockfile="/var/run/syslogd.sockets" 211.9Slukem 221.1Slukemsyslogd_precmd() 231.1Slukem{ 241.1Slukem # Transitional symlink for old binaries 251.1Slukem # 261.1Slukem if [ ! -h /dev/log ]; then 271.1Slukem ln -sf /var/run/log /dev/log 281.1Slukem fi 291.8Slukem 301.9Slukem # Create default list of syslog sockets to watch 311.9Slukem # 321.9Slukem ( umask 022 ; > $_sockfile ) 331.9Slukem 341.13Slukem # Find /etc/rc.d scripts with "chrootdir" rcorder(8) keyword, 351.13Slukem # and if $${app}_chrootdir is a directory, add appropriate 361.9Slukem # syslog socket to list of sockets to watch. 371.9Slukem # 381.13Slukem for _lr in $(rcorder -k chrootdir /etc/rc.d/*); do 391.13Slukem _l=${_lr##*/} 401.9Slukem eval _ldir=\$${_l}_chrootdir 411.9Slukem if checkyesno $_l && [ -n "$_ldir" ]; then 421.9Slukem echo "${_ldir}/var/run/log" >> $_sockfile 431.9Slukem fi 441.9Slukem done 451.9Slukem 461.9Slukem # If other sockets have been provided, change run_rc_command()'s 471.9Slukem # internal copy of $syslogd_flags to force use of specific 481.9Slukem # syslogd sockets. 491.8Slukem # 501.9Slukem if [ -s $_sockfile ]; then 511.9Slukem echo "/var/run/log" >> $_sockfile 521.11Slukem rc_flags="-P $_sockfile $rc_flags" 531.8Slukem fi 541.8Slukem 551.1Slukem return 0 561.1Slukem} 571.1Slukem 581.3Slukemload_rc_config $name 591.2Slukemrun_rc_command "$1" 60