#!/bin/sh
# Copyright (C) 2006 OpenWrt.org

. $IPKG_INSTROOT/etc/functions.sh

start() {
	return 0
}

stop() {
	return 0
}

install() {
	return 0
}

remove(){
    return 0
}

reload() {
	return 1
}

restart() {
	trap '' TERM
	stop "$@"
	start "$@"
}

boot() {
	start "$@"
}

shutdown() {
	return 0
}

disable() {
	name="$(basename "${initscript}")"
	rm -f "$IPKG_INSTROOT"/etc/rc.d/S??$name
	rm -f "$IPKG_INSTROOT"/etc/rc.d/K??$name
}

enable() {
	name="$(basename "${initscript}")"
	disable
	[ "$START" ] && ln -s "../init.d/$name" "$IPKG_INSTROOT/etc/rc.d/S${START}${name##S[0-9][0-9]}"
	[ "$STOP"  ] && ln -s "../init.d/$name" "$IPKG_INSTROOT/etc/rc.d/K${STOP}${name##K[0-9][0-9]}"
}

enabled() {
	name="$(basename "${initscript}")"
	[ -x "$IPKG_INSTROOT/etc/rc.d/S${START}${name##S[0-9][0-9]}" ]
}

depends() {
	return 0
}

help() {
	cat <<EOF
Syntax: $initscript [command]

Available commands:
	start	Start the service
	stop	Stop the service
	install install the package
	remove  remove the package
	restart	Restart the service
	reload	Reload configuration files (or restart if that fails)
	enable	Enable service autostart
	disable	Disable service autostart
$EXTRA_HELP
EOF
}

initscript="$1"
[ "$#" -ge 1 ] && shift
action="$1"
[ "$#" -ge 1 ] && shift

. "$initscript"

cmds=
for cmd in $EXTRA_COMMANDS; do
	cmds="${cmds:+$cmds$N}$cmd) $cmd \"\$@\";;"
done
eval "case \"\$action\" in
	start) start \"\$@\";;
	stop) stop \"\$@\";;
	install) install \"\$@\";;
	remove) remove \"\$@\";;
	reload) reload \"\$@\" || restart \"\$@\";;
	restart) restart \"\$@\";;
	boot) boot \"\$@\";;
	shutdown) shutdown \"\$@\";;
	enable) enable \"\$@\";;
	enabled) enabled \"\$@\";;
	disable) disable \"\$@\";;
	$cmds
	*) help;;
esac"
