4255ba175b
The program function in depend blocks is now able to search paths by itself. If passed multiple arguments or multiple calls, at least one of the arguments passed must be a program or a shell builtin (eg ip built into busybox). If a qualified path is specified, only that path will be checked, otherwise it will be checked as a builtin, then $PATH will be checked for the named binary (via type). Signed-off-by: Robin H. Johnson <robbat2@gentoo.org>
51 lines
1.1 KiB
Bash
51 lines
1.1 KiB
Bash
# Copyright (c) 2007-2008 Roy Marples <roy@marples.name>
|
|
# Released under the 2-clause BSD license.
|
|
|
|
br2684ctl_depend()
|
|
{
|
|
before ppp
|
|
program start br2684ctl
|
|
}
|
|
|
|
_config_vars="$_config_vars bridge bridge_add brctl"
|
|
|
|
br2684ctl_pre_start()
|
|
{
|
|
local opts=
|
|
eval opts=\$br2684ctl_${IFVAR}
|
|
[ -z "${opts}" ] && return 0
|
|
|
|
if [ "${IFACE#nas[0-9]*}" = "${IFACE}" ]; then
|
|
eerror "Interface must be called nas[0-9] for RFC 2684 Bridging"
|
|
return 1
|
|
fi
|
|
|
|
case " ${opts} " in
|
|
*" -b "*|*" -c "*)
|
|
eerror "The -b and -c options are not allowed for br2684ctl_${IVAR}"
|
|
return 1
|
|
;;
|
|
*" -a "*);;
|
|
*)
|
|
eerror "-a option (VPI and VCI) is required in br2684ctl_${IFVAR}"
|
|
return 1
|
|
;;
|
|
esac
|
|
|
|
einfo "Starting RFC 2684 Bridge control on ${IFACE}"
|
|
start-stop-daemon --start --exec $(_which br2684ctl) --background \
|
|
--make-pidfile --pidfile "/var/run/br2684ctl-${IFACE}.pid" \
|
|
-- -c "${IFACE#nas*}" ${opts}
|
|
eend $?
|
|
}
|
|
|
|
br2684ctl_post_stop()
|
|
{
|
|
local pidfile="/var/run/br2684ctl-${IFACE}.pid"
|
|
[ -e "${pidfile}" ] || return 0
|
|
|
|
einfo "Stopping RFC 2684 Bridge control on ${IFACE}"
|
|
start-stop-daemon --stop --quiet --pidfile "${pidfile}"
|
|
eend $?
|
|
}
|