summaryrefslogtreecommitdiff
path: root/net/bonding.sh
diff options
context:
space:
mode:
Diffstat (limited to 'net/bonding.sh')
-rw-r--r--net/bonding.sh10
1 files changed, 8 insertions, 2 deletions
diff --git a/net/bonding.sh b/net/bonding.sh
index 6a83a8c..21c00e3 100644
--- a/net/bonding.sh
+++ b/net/bonding.sh
@@ -102,15 +102,21 @@ bonding_pre_start()
eoutdent
if [ -d /sys/class/net ]; then
sys_bonding_path=/sys/class/net/"${IFACE}"/bonding
+ local oiface
+ oiface=$IFACE
if [ -n "${primary}" ]; then
- IFACE=$primary _down
+ IFACE=$primary
+ _down
+ IFACE=$oiface
echo "+${primary}" >$sys_bonding_path/slaves
echo "${primary}" >$sys_bonding_path/primary
fi
for s in ${slaves}; do
[ "${s}" = "${primary}" ] && continue
if ! grep -q ${s} $sys_bonding_path/slaves; then
- IFACE=$s _down
+ IFACE=$s
+ _down
+ IFACE=$oiface
echo "+${s}" >$sys_bonding_path/slaves
fi
done