diff options
Diffstat (limited to 'debian/ifplugd.init')
-rw-r--r-- | debian/ifplugd.init | 116 |
1 files changed, 116 insertions, 0 deletions
diff --git a/debian/ifplugd.init b/debian/ifplugd.init new file mode 100644 index 0000000..606d283 --- /dev/null +++ b/debian/ifplugd.init @@ -0,0 +1,116 @@ +#!/bin/bash +# $Id: ifplugd.init.in 43 2003-09-13 11:25:11Z lennart $ + +# This file is part of ifplugd. +# +# ifplugd is free software; you can redistribute it and/or modify it under +# the terms of the GNU General Public License as published by the Free +# Software Foundation; either version 2 of the License, or (at your +# option) any later version. +# +# ifplugd is distributed in the hope that it will be useful, but WITHOUT +# ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or +# FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License +# for more details. +# +# You should have received a copy of the GNU General Public License +# along with ifplugd; if not, write to the Free Software Foundation, +# Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA. + +# ifplugd Brings up/down network automatically +# +# chkconfig: 2345 11 89 +# description: Brings networks interfaces up and down automatically when \ +# the cable is removed / inserted +# +# processname: /usr/sbin/ifplugd +# config: /etc/ifplugd/ifplugd.conf + +### BEGIN INIT INFO +# Provides: ifplugd +# Required-Start: $network +# X-UnitedLinux-Should-Start: +# Required-Stop: $network +# X-UnitedLinux-Should-Stop: $ +# Default-Start: 3 5 +# Default-Stop: 0 1 2 6 +# Short-Description: ifplugd daemon providing +# Description: Start ifplugd to allow XY and provide YZ +# continued on second line by '#<TAB>' +# should contain enough info for the runlevel editor +# to give admin some idea what this service does and +# what it's needed for ... +# (The Short-Description should already be a good hint.) +### END INIT INFO + +CFG=/etc/default/ifplugd + +IFPLUGD=/usr/sbin/ifplugd +test -x $IFPLUGD || exit 0 + +if [ `id -u` != "0" ] && [ "$1" = "start" -o "$1" = "stop" ] ; then + echo "You must be root to start, stop or restart ifplugd." + exit 1 +fi + +[ -f $CFG ] && . $CFG + +VERB="$1" +shift + +[ $# -ne 0 ] && INTERFACES="$@" + +[ "x$INTERFACES" = "xauto" -o "x$INTERFACES" = "xall" ] && INTERFACES="`cat /proc/net/dev | awk '{ print $1 }' | egrep '^(eth|wlan)' | cut -d: -f1`" + +case "$VERB" in + start) + echo -n "Starting Network Interface Plugging Daemon:" + for IF in $INTERFACES ; do + IF1=$(echo $IF | sed "s/-/_/") + A=$(eval echo \$\{ARGS_${IF1}\}) + [ -z "$A" ] && A="$ARGS" + $IFPLUGD -i $IF $A + echo -n " $IF" + done + echo "." + ;; + stop) + echo -n "Stopping Network Interface Plugging Daemon:" + for IF in $INTERFACES ; do + $IFPLUGD -k --wait-on-kill -i $IF + echo -n " $IF" + done + echo "." + ;; + status) + for IF in $INTERFACES ; do + $IFPLUGD -c -i $IF + done + ;; + suspend) + echo -n "Suspending Network Interface Plugging Daemon:" + for IF in $INTERFACES ; do + $IFPLUGD -S -i $IF + echo -n " $IF" + done + echo "." + ;; + resume) + echo -n "Resuming Network Interface Plugging Daemon:" + for IF in $INTERFACES ; do + $IFPLUGD -R -i $IF + echo -n " $IF" + done + echo "." + ;; + force-reload|restart) + $0 stop $INTERFACES + sleep 3 + $0 start $INTERFACES + ;; + *) + echo "Usage: $0 {start|stop|restart|force-reload|status|suspend|resume}" + exit 1 +esac + +exit 0 |