From 7048837e3fca76a804d41fbfe4f0dc9495248399 Mon Sep 17 00:00:00 2001 From: Roy Marples Date: Tue, 20 Nov 2007 17:44:39 +0000 Subject: local.rc -> rc-enable and ensure that we start all defined services, including system ones --- init.d.BSD/rc-enabled | 45 +++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 45 insertions(+) create mode 100644 init.d.BSD/rc-enabled (limited to 'init.d.BSD/rc-enabled') diff --git a/init.d.BSD/rc-enabled b/init.d.BSD/rc-enabled new file mode 100644 index 00000000..dbc71ae2 --- /dev/null +++ b/init.d.BSD/rc-enabled @@ -0,0 +1,45 @@ +#!/sbin/runscript +# Copyright 2007 Roy Marples +# All rights reserved + +# Redistribution and use in source and binary forms, with or without +# modification, are permitted provided that the following conditions +# are met: +# 1. Redistributions of source code must retain the above copyright +# notice, this list of conditions and the following disclaimer. +# 2. Redistributions in binary form must reproduce the above copyright +# notice, this list of conditions and the following disclaimer in the +# documentation and/or other materials provided with the distribution. +# +# THIS SOFTWARE IS PROVIDED BY THE AUTHOR AND CONTRIBUTORS ``AS IS'' AND +# ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE +# IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE +# ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE +# FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL +# DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS +# OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) +# HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT +# LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY +# OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF +# SUCH DAMAGE. + +depend() { + need localmount net + after $(ls -1 | grep -v local) +} + +start() { + ebegin "Starting local rc services" + local svc= enabled= retval=0 + for svc in $(rcorder /usr/local/etc/rc.d/* 2>/dev/null); do + [ -x "$svc" ] || continue + eval enabled=\$$(basename ${svc})_enabled + case "$enabled" in + [Yy][Ee][Ss]|[Tt][Rr][Uu][Ee]|[Oo][Nn]|1) ;; + *) continue ;; + esac + "$svc" start + : $((retval += $?)) + done + eend $retval "Some local rc services failed to start" +} -- cgit v1.2.3