Add a rarpd init script and allow templates to add start-stop-daemon arguments

This commit is contained in:
Roy Marples 2007-11-20 17:10:35 +00:00
parent a12da90fb3
commit 42b057edbe
3 changed files with 57 additions and 0 deletions

3
conf.d.BSD/rarpd Normal file
View File

@ -0,0 +1,3 @@
# To start rarpd only for a given interface, set the
# following variable. Otherwise we listen on all interfaces.
#RARPD_INTERFACE="rl0"

48
init.d.BSD/rarpd Normal file
View File

@ -0,0 +1,48 @@
#!/sbin/runscript
# Copyright 1999-2007 Gentoo Foundation
# 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.
command=/usr/sbin/rarpd
command_args="-f ${RARPD_ARGS}"
pidfile=/var/run/rarpd.pid
name="Reverse ARP Daemon"
if [ -z "${RARPD_INTERFACE}" ]; then
command_args="${command_args} -a"
else
command_args="${command_args} ${RARPD_INTERFACE}"
fi
command_background="YES"
depend() {
need localmount
after bootmisc
if [ -z "${RARPD_INTERFACE}" ]; then
need net
else
net net."${RARPD_INTERFACE}"
fi
}

View File

@ -95,10 +95,16 @@ if [ -n "${command}" ]; then
if ! type start >/dev/null 2>&1; then if ! type start >/dev/null 2>&1; then
start() { start() {
ebegin "Starting ${name:-${SVCNAME}}" ebegin "Starting ${name:-${SVCNAME}}"
case "${command_background}" in
[Yy][Ee][Ss]|[Tt][Rr][Uu][Ee]|[Oo][Nn]|1)
start_stop_daemon_args="${start_stop_daemon_args} --background --pidfile"
;;
esac
start-stop-daemon --start \ start-stop-daemon --start \
--exec ${command} \ --exec ${command} \
${procname:+--name} ${procname} \ ${procname:+--name} ${procname} \
${pidfile:+--pidfile} ${pidfile} \ ${pidfile:+--pidfile} ${pidfile} \
${start_stop_daemon_args} \
-- ${command_args} -- ${command_args}
eend $? "Failed to start ${SVCNAME}" eend $? "Failed to start ${SVCNAME}"
} }