]> xenbits.xensource.com Git - xenclient/toolstack.git/commitdiff
[packages/xenclient-toolstack] Add action script for ifplugd to propagate eth0 link...
authorThomas Horsten <thomas.horsten@citrix.com>
Fri, 10 Jul 2009 10:25:02 +0000 (11:25 +0100)
committerThomas Horsten <thomas.horsten@citrix.com>
Fri, 10 Jul 2009 10:25:02 +0000 (11:25 +0100)
Makefile
scripts/ifplugd.action [new file with mode: 0755]

index f663821def4f232c03b42b97bcd99ba80fbae3df..e54e6ab7fd5f029d3a052d52d9358874e02d3ba1 100644 (file)
--- a/Makefile
+++ b/Makefile
@@ -40,6 +40,7 @@ install-scripts:
        $(INSTALL) scripts/*.rules $(DESTDIR)/etc/udev/rules.d/.
        $(INSTALL) $(addprefix scripts/,$(HOTPLUG_SCRIPTS)) \
                $(DESTDIR)/etc/xen/scripts
+       $(INSTALL) scripts/ifplugd.* $(DESTDIR)/etc/ifplugd/.
 
 install: install-programs install-scripts
 
diff --git a/scripts/ifplugd.action b/scripts/ifplugd.action
new file mode 100755 (executable)
index 0000000..0dc6d9e
--- /dev/null
@@ -0,0 +1,40 @@
+#!/bin/sh
+# $Id: ifplugd.action 99 2004-02-08 20:17:59Z 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.
+
+set -e
+
+if [ -z "$1" ] || [ -z "$2" ] ; then
+       echo "Wrong arguments" > /dev/stderr
+       exit 1
+fi
+
+if [ "$1" = "eth0" ]; then
+  echo "eth0 link state now $2"
+  if [ -w /sys/class/net/xenbr0/bridge/link_state ]; then
+    case $2 in
+      up)   echo 1 > /sys/class/net/xenbr0/bridge/link_state ;;
+      down) echo 0 > /sys/class/net/xenbr0/bridge/link_state ;;
+    esac
+  fi
+fi
+
+[ "$2" = "up" ] && exec /sbin/ifup $1
+[ "$2" = "down" ] && exec /sbin/ifdown $1
+
+exit 1