diff options
Diffstat (limited to 'sysconfig/network-scripts/ifdown-eth')
-rwxr-xr-x | sysconfig/network-scripts/ifdown-eth | 11 |
1 files changed, 9 insertions, 2 deletions
diff --git a/sysconfig/network-scripts/ifdown-eth b/sysconfig/network-scripts/ifdown-eth index 83aa7c7a..a9570c01 100755 --- a/sysconfig/network-scripts/ifdown-eth +++ b/sysconfig/network-scripts/ifdown-eth @@ -58,12 +58,19 @@ fi; retcode=0 [ -n "`pidof -x dhclient`" ] && { if [ -f "/var/run/dhclient-${DEVICE}.pid" ]; then + dhcpid=`cat /var/run/dhclient-${DEVICE}.pid` if [[ "$DHCPRELEASE" = [yY1]* ]]; then - release_dhcp_lease + /sbin/dhclient -r -lf /var/lib/dhcp/dhclient-${DEVICE}.leases -pf /var/run/dhclient-${DEVICE}.pid ${DEVICE} >/dev/null 2>&1 retcode=$? else - kill_dhcp_client + kill $dhcpid >/dev/null 2>&1 + retcode=$? + reason=STOP interface=${DEVICE} /sbin/dhclient-script fi + if [ -f "/var/run/dhclient-${DEVICE}.pid" ]; then + rm -f /var/run/dhclient-${DEVICE}.pid + kill $dhcpid >/dev/null 2>&1 + fi fi } # we can't just delete the configured address because that address |