aboutsummaryrefslogtreecommitdiff
path: root/net.Linux/bonding.sh
diff options
context:
space:
mode:
Diffstat (limited to 'net.Linux/bonding.sh')
-rw-r--r--net.Linux/bonding.sh101
1 files changed, 0 insertions, 101 deletions
diff --git a/net.Linux/bonding.sh b/net.Linux/bonding.sh
deleted file mode 100644
index 69de32aa..00000000
--- a/net.Linux/bonding.sh
+++ /dev/null
@@ -1,101 +0,0 @@
-# Copyright 2007-2008 Roy Marples <roy@marples.name>
-# All rights reserved. Released under the 2-clause BSD license.
-
-bonding_depend()
-{
- before interface macchanger
- program /sbin/ifenslave
-}
-
-_config_vars="$_config_vars slaves"
-
-_is_bond()
-{
- [ -f "/proc/net/bonding/${IFACE}" ]
-}
-
-bonding_pre_start()
-{
- local s= slaves="$(_get_array "slaves_${IFVAR}")"
-
- [ -z "${slaves}" ] && return 0
-
- # Load the kernel module if required
- if [ ! -d /proc/net/bonding ]; then
- if ! modprobe bonding; then
- eerror "Cannot load the bonding module"
- return 1
- fi
- fi
-
- # We can create the interface name we like now, but this
- # requires sysfs
- if ! _exists && [ -d /sys/class/net ]; then
- echo "+${IFACE}" > /sys/class/net/bonding_masters
- fi
- _exists true || return 1
-
- if ! _is_bond; then
- eerror "${IFACE} is not capable of bonding"
- return 1
- fi
-
- ebegin "Adding slaves to ${IFACE}"
- eindent
- einfo "${slaves}"
-
- # Check that our slaves exist
- (
- for IFACE in ${slaves}; do
- _exists true || return 1
- done
-
- # Must force the slaves to a particular state before adding them
- for IFACE in ${slaves}; do
- _delete_addresses
- _up
- done
- )
-
- # now force the master to up
- _up
-
- # finally add in slaves
- eoutdent
- /sbin/ifenslave "${IFACE}" ${slaves} >/dev/null
- eend $?
-
- return 0 #important
-}
-
-bonding_stop()
-{
- _is_bond || return 0
-
- local slaves= s=
- slaves=$( \
- sed -n -e 's/^Slave Interface: //p' "/proc/net/bonding/${IFACE}" \
- | tr '\n' ' ' \
- )
- [ -z "${slaves}" ] && return 0
-
- # remove all slaves
- ebegin "Removing slaves from ${IFACE}"
- eindent
- einfo "${slaves}"
- eoutdent
- /sbin/ifenslave -d "${IFACE}" ${slaves}
-
- # reset all slaves
- (
- for IFACE in ${slaves}; do
- if _exists; then
- _delete_addresses
- _down
- fi
- done
- )
-
- eend 0
- return 0
-}