diff options
-rw-r--r-- | initscripts.spec | 8 | ||||
-rw-r--r-- | sysconfig/network-scripts/ifdown-ipv6 | 1 | ||||
-rw-r--r-- | sysconfig/network-scripts/network-functions | 20 |
3 files changed, 25 insertions, 4 deletions
diff --git a/initscripts.spec b/initscripts.spec index 65a65839..528a330b 100644 --- a/initscripts.spec +++ b/initscripts.spec @@ -1,6 +1,6 @@ Summary: Scripts to bring up network interfaces and legacy utilities Name: initscripts -Version: 9.59 +Version: 9.60 License: GPLv2 Group: System Environment/Base Release: 1%{?dist} @@ -189,6 +189,12 @@ rm -rf $RPM_BUILD_ROOT /etc/profile.d/debug* %changelog +* Tue Dec 16 2014 Lukáš Nykrýn <lnykryn@redhat.com> - 9.60-1 +- improve_check_for_bond_master_in_install_bonding_driver +- network-functions: reeplace iwconfig with iw +- ifup: fix typo +- ifdown-ipv6: reset addrgenmode to eui64 for device + * Wed Nov 12 2014 Lukáš Nykrýn <lnykryn@redhat.com> - 9.59-1 - adjust LINKDELAY when STP is on diff --git a/sysconfig/network-scripts/ifdown-ipv6 b/sysconfig/network-scripts/ifdown-ipv6 index 7bfcfb34..d2207b76 100644 --- a/sysconfig/network-scripts/ifdown-ipv6 +++ b/sysconfig/network-scripts/ifdown-ipv6 @@ -66,6 +66,7 @@ fi /sbin/sysctl -e -w net.ipv6.conf.$SYSCTLDEVICE.forwarding=0 >/dev/null 2>&1 /sbin/sysctl -e -w net.ipv6.conf.$SYSCTLDEVICE.accept_ra=0 >/dev/null 2>&1 /sbin/sysctl -e -w net.ipv6.conf.$SYSCTLDEVICE.accept_redirects=0 >/dev/null 2>&1 +/sbin/ip link set $DEVICE addrgenmode eui64 >/dev/null 2>&1 # Test status of tun6to4 device ipv6_test_device_status tun6to4 diff --git a/sysconfig/network-scripts/network-functions b/sysconfig/network-scripts/network-functions index ffc23238..9e269fda 100644 --- a/sysconfig/network-scripts/network-functions +++ b/sysconfig/network-scripts/network-functions @@ -466,7 +466,9 @@ add_default_route () is_wireless_device () { - [ -d "/sys/class/net/$1/wireless" -o -d "/sys/class/net/$1/phy80211" ] + [ -x /usr/sbin/iw ] || return 1 + LC_ALL=C /usr/sbin/iw dev $1 info > /dev/null 2>&1 || return 0 + return 1 } phy_wireless_device () @@ -474,10 +476,22 @@ phy_wireless_device () cat /sys/class/net/$1/phy80211/name } +bond_master_exists () +{ + local bond_name + [ -z "${1}" ] && return 1 + [ ! -f /sys/class/net/bonding_masters ] && return 1 + + for bond_name in $(< /sys/class/net/bonding_masters); do + [ "${bond_name}" == "${1}" ] && return 0 + done + return 1 +} + install_bonding_driver () { - [ ! -f /sys/class/net/bonding_masters ] && ( modprobe bonding || return 1 ) - if ! fgrep -sqx "$1" /sys/class/net/bonding_masters; then + if ! bond_master_exists ${1}; then + modprobe bonding || return 1 echo "+$1" > /sys/class/net/bonding_masters 2>/dev/null fi ( |