diff options
Diffstat (limited to 'conf/ifplugd.init.in')
-rwxr-xr-x | conf/ifplugd.init.in | 110 |
1 files changed, 110 insertions, 0 deletions
diff --git a/conf/ifplugd.init.in b/conf/ifplugd.init.in new file mode 100755 index 0000000..959f77b --- /dev/null +++ b/conf/ifplugd.init.in @@ -0,0 +1,110 @@ +#!/bin/bash +# $Id: ifplugd.init.in 86 2004-01-26 15:34:24Z 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: @sbindir@/ifplugd +# config: @sysconfdir@/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 +# Description: Start ifplugd +### END INIT INFO + +CFG=@sysconfdir@/ifplugd/ifplugd.conf + +IFPLUGD=@sbindir@/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 + +[ "x$*" != "x" ] && INTERFACES="$*" + +[ "x$INTERFACES" = "xauto" ] && 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 + A="`eval echo \$\{ARGS_${IF}\}`" + [ -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 -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 |