summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--src/lib/connections/mobile_ppp7
-rw-r--r--src/lib/connections/pppoe15
2 files changed, 11 insertions, 11 deletions
diff --git a/src/lib/connections/mobile_ppp b/src/lib/connections/mobile_ppp
index 6df30d8..785457d 100644
--- a/src/lib/connections/mobile_ppp
+++ b/src/lib/connections/mobile_ppp
@@ -79,12 +79,15 @@ EOF
}
mobile_ppp_down() {
- local options chat pidfile
+ local options chat pidfile pid
options="$STATE_DIR/mobile_ppp.$Interface.$Profile/options"
chat="$STATE_DIR/mobile_ppp.$Interface.$Profile/modem.chat"
pidfile="/var/run/ppp-$Profile.pid"
- [[ -r $pidfile ]] && kill "$(< "$pidfile")"
+ if [[ -r $pidfile ]]; then
+ read pid < "$pidfile"
+ (( pid )) && kill "$pid"
+ fi
rm "$options" "$chat"
rmdir "$(dirname "$options")"
diff --git a/src/lib/connections/pppoe b/src/lib/connections/pppoe
index 78cc35f..9816658 100644
--- a/src/lib/connections/pppoe
+++ b/src/lib/connections/pppoe
@@ -8,9 +8,7 @@ quote_word() {
}
pppoe_up() {
- local options pidfile pppn
- options="$STATE_DIR/pppoe.$Interface.$Profile/options"
- pidfile="/var/run/ppp-$Profile.pid"
+ local options="$STATE_DIR/pppoe.$Interface.$Profile/options"
if ! is_interface "$Interface"; then
report_error "Interface '$Interface' does not exist"
@@ -55,18 +53,17 @@ EOF
report_error "Could not establish a ppp connection for profile '$Profile'."
return 1
fi
-
- [[ -r $pidfile ]] || return 0
- pppn=$(grep -l "$(< "$pidfile")" /var/run/ppp[[:digit:]]*.pid)
- report_notice "PPP unit for profile '$Profile': ${pppn:9:-4}"
}
pppoe_down() {
- local options pidfile
+ local options pidfile pid
options="$STATE_DIR/pppoe.$Interface.$Profile/options"
pidfile="/var/run/ppp-$Profile.pid"
- [[ -r $pidfile ]] && kill "$(< "$pidfile")"
+ if [[ -r $pidfile ]]; then
+ read pid < "$pidfile"
+ (( pid )) && kill "$pid"
+ fi
rm "$options"
rmdir "$(dirname "$options")"