#! /bin/sh # ### BEGIN INIT INFO # Provides: dslfirewall # Required-Start: $network # Required-Stop: # Default-Start: 2 3 5 # Default-Stop: # Description: Firewall-Skript fuer DSL-Router ### END INIT INFO # Source SuSE config #. /etc/rc.config # Set locations of scripts and test for existence FW_START=/etc/init.d/dslfirewall_start.rc FW_STOP=/etc/init.d/dslfirewall_stop.rc FW_STATUS=/etc/init.d/dslfirewall_status.rc test -x $FW_START || exit 5 test -x $FW_STOP || exit 5 test -x $FW_STATUS || exit 5 # Shell functions sourced from /etc/rc.status: # rc_check check and set local and overall rc status # rc_status check and set local and overall rc status # rc_status -v ditto but be verbose in local rc status # rc_status -v -r ditto and clear the local rc status # rc_failed set local and overall rc status to failed # rc_failed set local and overall rc status to # rc_reset clear local rc status (overall remains) # rc_exit exit appropriate to overall rc status . /etc/rc.status # First reset status of this service rc_reset # Return values acc. to LSB for all commands but status: # 0 - success # 1 - generic or unspecified error # 2 - invalid or excess argument(s) # 3 - unimplemented feature (e.g. "reload") # 4 - insufficient privilege # 5 - program is not installed # 6 - program is not configured # 7 - program is not running # # Note that starting an already running service, stopping # or restarting a not-running service as well as the restart # with force-reload (in case signalling is not supported) are # considered a success. case "$1" in start) echo -n "Starting DSL-Firewall (dslfirewall): " $FW_START rc_status -v ;; stop) echo -n "Shutting down DSL-Firewall (dslfirewall): " $FW_STOP rc_status -v ;; try-restart) $0 status >/dev/null && $0 restart rc_status ;; restart) $0 stop $0 start rc_status ;; status) $FW_STATUS rc_status ;; *) echo "Usage: $0 {start|stop|status|restart}" exit 1 ;; esac rc_exit