]> git.ipfire.org Git - people/arne_f/network.git/commitdiff
network: pppoe: Kill pppd daemon in a better way.
authorMichael Tremer <michael.tremer@ipfire.org>
Thu, 17 Jun 2010 22:24:52 +0000 (00:24 +0200)
committerMichael Tremer <michael.tremer@ipfire.org>
Thu, 17 Jun 2010 22:24:52 +0000 (00:24 +0200)
hooks/pppoe

index 5e18b84f1525b921d3e2bad5483a386da3f8abbc..3d4af332fca12065db410d13222fd392d78efcd6 100755 (executable)
@@ -48,6 +48,13 @@ function _pppoe_real_device() {
        devicify ${device}
 }
 
+function pppd_pid() {
+       local zone=${1}
+       shift
+
+       cat /var/run/${zone}.pid 2>/dev/null
+}
+
 function _check() {
        assert isset USER
        assert isset SECRET
@@ -189,13 +196,10 @@ function _down() {
        config_read ${ZONE_DIR}/${zone}/settings
 
        # Kill pppd
-       pid=$(cat /var/run/${zone}.pid 2>/dev/null)
-       if [ -n "${pid}" ]; then
-               kill ${pid} &>/dev/null
-       fi
+       kill $(pppd_pid ${zone}) &>/dev/null
 
        # Pull down device or remove virtual one
-       if [ -n "${DEVICE_VID}" ]; then 
+       if [ -n "${DEVICE_VID}" ]; then
                device_remove_virtual ${DEVICE_MAC}
        else
                device_set_down ${DEVICE}