aboutsummaryrefslogtreecommitdiffstats
path: root/sysconfig/network-scripts/ifdown
diff options
context:
space:
mode:
Diffstat (limited to 'sysconfig/network-scripts/ifdown')
-rwxr-xr-xsysconfig/network-scripts/ifdown15
1 files changed, 12 insertions, 3 deletions
diff --git a/sysconfig/network-scripts/ifdown b/sysconfig/network-scripts/ifdown
index 57e56e3f..597802bf 100755
--- a/sysconfig/network-scripts/ifdown
+++ b/sysconfig/network-scripts/ifdown
@@ -41,9 +41,14 @@ then
exit 0
fi
-if [ "$USE_NM" = "true" ]; then
- echo $"$0: interface ${1} is controlled by NetworkManager; skipping." >&2
- exit 0
+if [ "$_use_nm" = "true" ]; then
+ if [ -n "$UUID" -a -z "$DEVICE" ]; then
+ DEVICE=$(nmcli -t --fields uuid,devices con status | awk -F ':' "\$1 == \"$UUID\" { print \$2 }")
+ fi
+ if [ -n "$DEVICE" ] && ! is_nm_device_unmanaged "$DEVICE" ; then
+ nmcli dev disconnect iface "$DEVICE"
+ exit $?
+ fi
fi
if [ -x /sbin/ifdown-pre-local ]; then
@@ -53,6 +58,10 @@ fi
OTHERSCRIPT="/etc/sysconfig/network-scripts/ifdown-${DEVICETYPE}"
if [ ! -x ${OTHERSCRIPT} ]; then
+ OTHERSCRIPT="/etc/sysconfig/network-scripts/ifdown-${TYPE}"
+fi
+
+if [ ! -x ${OTHERSCRIPT} ]; then
OTHERSCRIPT="/etc/sysconfig/network-scripts/ifdown-eth"
fi