diff options
Diffstat (limited to 'recipes-connectivity/hostapd/files/init')
-rw-r--r-- | recipes-connectivity/hostapd/files/init | 69 |
1 files changed, 69 insertions, 0 deletions
diff --git a/recipes-connectivity/hostapd/files/init b/recipes-connectivity/hostapd/files/init new file mode 100644 index 0000000..04fd2d0 --- /dev/null +++ b/recipes-connectivity/hostapd/files/init @@ -0,0 +1,69 @@ +#!/bin/sh +DAEMON=/usr/sbin/hostapd +NAME=hostapd +DESC="HOSTAP Daemon" +ARGS="/etc/hostapd.conf -B" + +test -f $DAEMON || exit 0 + +[ -f /etc/default/$NAME ] && . /etc/default/$NAME + +set -e + +# source function library +. /etc/init.d/functions + +delay_stop() { + count=0 + while [ $count -lt 9 ] ; do + if pidof $DAEMON >/dev/null; then + sleep 1 + else + return 0 + fi + count=`expr $count + 1` + done + echo "Failed to stop $DESC." + return 1 +} + +case "$1" in + start) + if [ "$START_ON_BOOT" != "yes" ]; then + exit 0 + fi + if [[ -n $PREUP ]] ; then + bash -c "$PREUP" + fi + echo -n "Starting $DESC: " + start-stop-daemon -S -x $DAEMON -- $ARGS + if [[ -n $POSTUP ]] ; then + bash -c "$POSTUP" + fi + echo "$NAME." + ;; + stop) + echo -n "Stopping $DESC: " + start-stop-daemon -K --oknodo -x $DAEMON + echo "$NAME." + ;; + restart) + $0 stop + delay_stop && $0 start + ;; + reload) + echo -n "Reloading $DESC: " + killall -HUP $(basename ${DAEMON}) + echo "$NAME." + ;; + status) + status $DAEMON + exit $? + ;; + *) + echo "Usage: $0 {start|stop|restart|reload|status}" + exit 1 + ;; +esac + +exit 0 |