aboutsummaryrefslogtreecommitdiffstats
path: root/sysconfig
diff options
context:
space:
mode:
Diffstat (limited to 'sysconfig')
-rwxr-xr-xsysconfig/network-scripts/ifdown3
-rwxr-xr-xsysconfig/network-scripts/ifup1
-rw-r--r--sysconfig/network-scripts/network-functions4
3 files changed, 4 insertions, 4 deletions
diff --git a/sysconfig/network-scripts/ifdown b/sysconfig/network-scripts/ifdown
index 3ccf4547..8a80161a 100755
--- a/sysconfig/network-scripts/ifdown
+++ b/sysconfig/network-scripts/ifdown
@@ -52,8 +52,6 @@ if [ "${NETWORKING_IPV6}" = "yes" ]; then
/etc/sysconfig/network-scripts/ifdown-ipv6 ${CONFIG}
fi
-expand_config
-
retcode=0
if [ "$BOOTPROTO" = bootp -o "$BOOTPROTO" = dhcp ]; then
[ -n "`pidof -x dhcpcd`" ] && {
@@ -65,6 +63,7 @@ if [ "$BOOTPROTO" = bootp -o "$BOOTPROTO" = dhcp ]; then
retcode=$?
}
else
+ expand_config
ip addr del ${IPADDR}/${PREFIX} brd ${BROADCAST:-+} dev ${DEVICE}
fi
diff --git a/sysconfig/network-scripts/ifup b/sysconfig/network-scripts/ifup
index 2f61aca1..cad5edcb 100755
--- a/sysconfig/network-scripts/ifup
+++ b/sysconfig/network-scripts/ifup
@@ -149,6 +149,7 @@ if [ -n "${DYNCONFIG}" ]; then
echo -n $"Determining IP information for ${DEVICE}..."
if check_link_down ${DEVICE}; then
echo $" failed; no link present. Check cable?"
+ ip link set down ${DEVICE} >/dev/null 2>&1
exit 1
fi
diff --git a/sysconfig/network-scripts/network-functions b/sysconfig/network-scripts/network-functions
index f4d7a130..995f3f95 100644
--- a/sysconfig/network-scripts/network-functions
+++ b/sysconfig/network-scripts/network-functions
@@ -120,9 +120,9 @@ check_device_down ()
check_link_down ()
{
if [ -x /sbin/mii-tool ]; then
- ip link set $1 up >/dev/null 2>&1
+ LC_ALL=C ip link show $1 2>/dev/null| grep -q UP || ip link set $1 up >/dev/null 2>&1
+ sleep 2
output=`LC_ALL=C /sbin/mii-tool $1 2>&1`
- ip link set $1 down >/dev/null 2>&1
if echo $output | grep -q "Operation not supported"; then
return 1
elif echo $output | grep -q "link ok"; then