initscripts/sbin/ifdown
Davide Madrisan 93397b69a2 ifdown: check NM_CONTROLLED after sourcing the device conf file
Signed-off-by: Davide Madrisan <davide.madrisan@gmail.com>
2013-02-22 19:51:27 +01:00

35 lines
890 B
Bash

#!/bin/bash
# Copyright (c) 2003-2012 by Silvan Calarco <silvan.calarco@mambasoft.it>
# Copyright (c) 2003-2009,2013 by Davide Madrisan <davide.madrisan@gmail.com>
. /etc/sysconfig/rc
. $rc_functions
DEVICE=${1}
if [ -z "$DEVICE" ]; then
echo "Usage: ifdown <device name>" 1>&2
exit 1
fi
[ -r $network_devices/ifcfg-${DEVICE} ] &&
. $network_devices/ifcfg-${DEVICE}
[ "$NM_CONTROLLED" = "no" ] || exit 0
if [ -x $network_devices/ifdown-${DEVICE} ]; then
$network_devices/ifdown-${DEVICE}
else
if [ -r /var/run/wpa_supplicant/${DEVICE} ]; then
wpa_cli -i${DEVICE} terminate >/dev/null
fi
if [ -r /var/run/dhclient.${DEVICE}.pid ]; then
/sbin/dhclient ${DEVICE} -r -pf /var/run/dhclient.${DEVICE}.pid
kill -9 `cat /var/run/dhclient.${DEVICE}.pid` 2>/dev/null
rm -f /var/run/dhclient.${DEVICE}.pid
fi
/sbin/ifconfig ${DEVICE} down
fi