Allow services to define which extra commands require the service to be started

This commit is contained in:
Roy Marples
2007-11-29 16:23:59 +00:00
parent 82df7e4584
commit 16ad975b2d
4 changed files with 26 additions and 6 deletions

View File

@@ -144,7 +144,8 @@ fi
while [ -n "$1" ]; do
# See if we have the required function and run it
for _cmd in describe start stop ${extra_commands:-${opts}}; do
for _cmd in describe start stop ${extra_commands:-${opts}} \
${extra_started_commands}; do
if [ "${_cmd}" = "$1" ]; then
if type "$1" >/dev/null 2>&1; then
# If we're in the background, we may wish to fake some
@@ -159,6 +160,16 @@ while [ -n "$1" ]; do
fi
done
fi
# Check to see if we need to be started before we can run
# this command
for _cmd in ${extra_started_commands}; do
if [ "${_cmd}" = "$1" ]; then
if ! service_started "${SVCNAME}"; then
eerror "${SVCNAME}: cannot \`$1' as it has not been started"
exit 1
fi
fi
done
unset _cmd
if type "$1"_pre >/dev/null 2>&1; then
"$1"_pre || exit $?