- local pid="$(cat /var/run/ppp-${cfg}.pid 2>/dev/null)"
- [ -d "/proc/$pid" ] && grep pppd "/proc/$pid/cmdline" 2>/dev/null >/dev/null && return 0
+ lock "/var/lock/ppp-${cfg}"
+ local pid="$(head -n1 /var/run/ppp-${cfg}.pid 2>/dev/null)"
+ [ -d "/proc/$pid" ] && grep pppd "/proc/$pid/cmdline" 2>/dev/null >/dev/null && {
+ lock -u "/var/lock/ppp-${cfg}"
+ return 0
+ }
config_get device "$cfg" device
config_get unit "$cfg" unit
config_get username "$cfg" username
config_get password "$cfg" password
config_get keepalive "$cfg" keepalive
config_get device "$cfg" device
config_get unit "$cfg" unit
config_get username "$cfg" username
config_get password "$cfg" password
config_get keepalive "$cfg" keepalive
- interval="${keepalive%%*[, ]}"
+
+ config_get connect "$cfg" connect
+ config_get disconnect "$cfg" disconnect
+
+ interval="${keepalive##*[, ]}"
${demand:+precompiled-active-filter /etc/ppp/filter demand idle }${demand:-persist} \
usepeerdns \
defaultroute \
replacedefaultroute \
${username:+user "$username" password "$password"} \
linkname "$cfg" \
${demand:+precompiled-active-filter /etc/ppp/filter demand idle }${demand:-persist} \
usepeerdns \
defaultroute \
replacedefaultroute \
${username:+user "$username" password "$password"} \
linkname "$cfg" \