]> git.pld-linux.org Git - packages/rc-scripts.git/commitdiff
- rel 5; fix bonding start when bondX is not automatically created auto/th/rc-scripts-0.4.18-5
authorArkadiusz Miśkiewicz <arekm@maven.pl>
Mon, 4 Mar 2019 09:56:10 +0000 (10:56 +0100)
committerArkadiusz Miśkiewicz <arekm@maven.pl>
Mon, 4 Mar 2019 09:56:10 +0000 (10:56 +0100)
rc-scripts-bond.patch [new file with mode: 0644]

diff --git a/rc-scripts-bond.patch b/rc-scripts-bond.patch
new file mode 100644 (file)
index 0000000..c178258
--- /dev/null
@@ -0,0 +1,99 @@
+commit 83014f96551132c825ff52d94330e366148f20cb
+Author: Arkadiusz Miśkiewicz <arekm@maven.pl>
+Date:   Mon Mar 4 10:19:27 2019 +0100
+
+    Create bond master interface if it doesn't exist when slave interface is being ifuped.
+
+diff --git a/lib/ifup b/lib/ifup
+index dee4e58..38780bf 100755
+--- a/lib/ifup
++++ b/lib/ifup
+@@ -125,6 +125,9 @@ if [ -n "$ETHTOOL_OPTS" ] ; then
+ fi
+ if is_yes "$SLAVE" && [ -n "$MASTER" ] ; then
++    # create master if it doesn't exist yet
++    [ ! -d "/sys/class/net/${MASTER}" ] && ip link add "${MASTER}" type bond
++
+     nls "Enslaving %s to %s" "$DEVICE" "$MASTER"
+     ip link set "$DEVICE" master "$MASTER"
+     ip link set "$DEVICE" up
+commit d67c5d59733955d1e6def78a6fc6f5917e214247
+Author: Arkadiusz Miśkiewicz <arekm@maven.pl>
+Date:   Mon Mar 4 10:32:13 2019 +0100
+
+    Create bondX interfaces when ifcfg-bondX is called with ifup and interface doesn't exist, yet.
+
+diff --git a/lib/Makefile.am b/lib/Makefile.am
+index 4b19bc7..e90f21e 100644
+--- a/lib/Makefile.am
++++ b/lib/Makefile.am
+@@ -16,6 +16,7 @@ scripts_SCRIPTS = \
+       ifdown-sl \
+       ifdown-vlan \
+       ifup-aliases \
++      ifup-bond \
+       ifup-br \
+       ifup-ipx \
+       ifup-irda \
+diff --git a/lib/functions.network b/lib/functions.network
+index d151b04..86bc978 100644
+--- a/lib/functions.network
++++ b/lib/functions.network
+@@ -226,7 +226,7 @@ setup_ip_param ()
+       # set handling for bridge
+       case "$DEVICETYPE" in
+-        br|atm|lec|irda|vlan)
++        bond|br|atm|lec|irda|vlan)
+               HANDLING=1
+               ;;
+       esac
+diff --git a/lib/ifup-bond b/lib/ifup-bond
+new file mode 100755
+index 0000000..b0bc0c9
+--- /dev/null
++++ b/lib/ifup-bond
+@@ -0,0 +1,42 @@
++#!/bin/sh
++#
++#    ifup-bond - Bonding configuration script
++#    Copyright (C) 2019 Arkadiusz Miśkiewicz <misiek@pld-linux.org>
++#
++#    This program 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.
++#
++#    This program 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 this program; if not, write to the Free Software
++#    Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307  USA
++#
++#
++PATH=/sbin:/usr/sbin:/bin:/usr/bin
++
++cd /lib/rc-scripts
++. /etc/sysconfig/network
++. /etc/rc.d/init.d/functions
++. /lib/rc-scripts/functions.network
++
++CONFIG=$1
++source_config
++
++if [ "foo$2" = "fooboot" ] && is_no "${ONBOOT}"; then
++      exit
++fi
++
++. /etc/sysconfig/network
++
++# set all major variables
++setup_ip_param
++
++if [ ! -d "/sys/class/net/${DEVICE}" ]; then
++      ip link add "${DEVICE}" type bond
++fi
This page took 0.092948 seconds and 4 git commands to generate.