#!/bin/sh PATH=/sbin:/bin:/usr/sbin:/usr/bin DAEMON=/usr/sbin/lighttpd DAEMONNAME="lighttpd" NAME=commissioning DESC="Lighttpd Web Server" OPTS="-f /etc/lighttpd-commission.conf" PIDFILE=/var/run/lighttpd-commission.pid ENABLED=yes [ -f /etc/default/$NAME ] && . /etc/default/$NAME # If we are not enabled, see if anybody has a password if [[ ENABLED == no ]] ; then PASSWORDS=$(passwd -Sa | egrep '^[^[:space:]]+[[:space:]]P[[:space:]]' | wc -l) if (($PASSWORDS == 0)) ; then # No password, so turn on commissioning rm /etc/default/$NAME ENABLED="yes" fi fi # /etc/default/no-${NAME} should point at /etc/default/.no-${NAME} # and contain ENABLED="no". # This will prevent commissioning on a factory reset # but not on an image update for tighter security. # If the device is to have no password at all, this file and # link must be created, and ENABLED must be set to "no" [ -f "/etc/default/no-${NAME}" ] && . "/etc/config/no-${NAME}" case "$1" in start) if [ "$ENABLED" != "yes" ]; then echo "$NAME: disabled in /etc/default" exit fi echo -n "Starting $DESC: " start-stop-daemon --start -x "$DAEMON" -- $OPTS echo "$NAME." ;; stop) echo -n "Stopping $DESC: " start-stop-daemon --stop -p ${PIDFILE} -x "$DAEMON" echo "$NAME." ;; reload) echo -n "Reloading $DESC: " set -x pkill -HUP -F ${PIDFILE} "$DAEMONNAME" echo "$NAME." ;; restart|force-reload) echo -n "Restarting $DESC: " start-stop-daemon --stop -p ${PIDFILE} -x "$DAEMON" sleep 1 start-stop-daemon --start -x "$DAEMON" -- $OPTS echo "$NAME." ;; *) N=/etc/init.d/$NAME echo "Usage: $N {start|stop|restart|force-reload}" >&2 exit 1 ;; esac exit 0