X-Git-Url: https://git.rohieb.name/openwrt.git/blobdiff_plain/37840396d601a725bd29f264946f5a14dc7d21d0..83128cefc802555408825618a03fe52fb4a82a87:/package/ppp/files/ppp.sh?ds=sidebyside diff --git a/package/ppp/files/ppp.sh b/package/ppp/files/ppp.sh index 5eb007da1..0d0941fda 100644 --- a/package/ppp/files/ppp.sh +++ b/package/ppp/files/ppp.sh @@ -3,10 +3,6 @@ scan_ppp() { pppdev="${pppdev:-0}" config_set "$1" ifname "ppp$pppdev" config_set "$1" unit "$pppdev" - - # set 'auto' to 0, so that hotplug does not attempt to - # reconfigure an interface that is managed by pppd - config_set "$1" auto 0 } start_pppd() { @@ -25,6 +21,10 @@ start_pppd() { config_get username "$cfg" username config_get password "$cfg" password config_get keepalive "$cfg" keepalive + + config_get connect "$cfg" connect + config_get disconnect "$cfg" disconnect + interval="${keepalive##*[, ]}" [ "$interval" != "$keepalive" ] || interval=5 @@ -38,7 +38,23 @@ start_pppd() { replacedefaultroute \ ${username:+user "$username" password "$password"} \ linkname "$cfg" \ - ipparam "$cfg" + ipparam "$cfg" \ + ${connect:+connect "$connect"} \ + ${disconnect:+disconnect "$disconnect"} lock -u "/var/lock/ppp-${cfg}" } + +setup_interface_ppp() { + local iface="$1" + local config="$2" + + config_get device "$config" device + + config_get mtu "$cfg" mtu + mtu=${mtu:-1492} + start_pppd "$config" \ + mtu $mtu mru $mtu \ + "$device" +} +