#! /bin/sh ### BEGIN INIT INFO # Provides: knockd # Required-Start: $network $syslog # Required-Stop: $network $syslog # Default-Start: 2 3 4 5 # Default-Stop: 0 1 6 # Short-Description: port-knock daemon ### END INIT INFO PATH=/usr/local/sbin:/usr/local/bin:/sbin:/bin:/usr/sbin:/usr/bin DAEMON=/usr/sbin/knockd NAME=knockd PIDFILE=/var/run/$NAME.pid DEFAULTS_FILE=/etc/default/knockd DESC="Port-knock daemon" OPTIONS=" -d" umask 0037 test -f $DAEMON || exit 0 set -e [ -f $DEFAULTS_FILE ] && . $DEFAULTS_FILE . /lib/lsb/init-functions [ "$KNOCKD_OPTS" ] && OPTIONS="$OPTIONS $KNOCKD_OPTS" start_if_configured() { if [ $START_KNOCKD -ne 1 ]; then log_warning_msg "$NAME disabled: not starting. To enable it edit $DEFAULTS_FILE" exit 0 else log_daemon_msg "Starting $DESC" "$NAME" if ! START_ERROR=`start-stop-daemon --start --oknodo --quiet --exec $DAEMON -- $OPTIONS 2>&1`; then # don't fail the upgrade if it fails to start echo -n " " log_action_end_msg 1 "$START_ERROR" exit 0 else log_end_msg 0 fi fi } case "$1" in start) start_if_configured ;; stop) log_daemon_msg "Stopping $DESC" "$NAME" start-stop-daemon --stop --oknodo --quiet --exec $DAEMON log_end_msg 0 ;; restart|reload|force-reload) log_daemon_msg "Stopping $DESC" "$NAME" start-stop-daemon --stop --oknodo --quiet --exec $DAEMON log_end_msg 0 sleep 1 start_if_configured ;; *) log_warning_msg "Usage: $0 {start|stop|restart|reload|force-reload}" >&2 exit 1 ;; esac exit 0