X-Git-Url: https://git.rohieb.name/openwrt.git/blobdiff_plain/8c70130e61071527bda2e96412ed3c222374d37e..83446d19bc40eab97c368df0d1ef8da9b8e5a52f:/openwrt/package/ppp/files/ifup.pppoa diff --git a/openwrt/package/ppp/files/ifup.pppoa b/openwrt/package/ppp/files/ifup.pppoa index 51b0fe334..277266c0f 100644 --- a/openwrt/package/ppp/files/ifup.pppoa +++ b/openwrt/package/ppp/files/ifup.pppoa @@ -1,11 +1,10 @@ #!/bin/sh [ $# = 0 ] && { echo " $0 "; exit; } -. /etc/functions.sh -. /etc/network.overrides -[ -e /etc/config/network ] && . /etc/config/network +. /etc/config/network type=$1 -[ "$(nvram get ${type}_proto)" = "pppoa" ] || { +eval "proto=\"\${${type}_proto}\"" +[ "$proto" = "pppoa" ] || { echo "$0: ${type}_proto isn't pppoa" exit } @@ -14,29 +13,24 @@ for module in slhc ppp_generic pppoatm; do /sbin/insmod $module 2>&- >&- done -while :; do - VPI=$(nvram get atm_vpi) - VCI=$(nvram get atm_vci) - USERNAME=$(nvram get ppp_username) - PASSWORD=$(nvram get ppp_passwd) - REDIAL=$(nvram get ppp_redialperiod) - REDIAL=${REDIAL:+lcp-echo-interval $REDIAL} - IDLETIME=$(nvram get ppp_idletime) - IDLETIME=${IDLETIME:+lcp-echo-failure $IDLETIME} - MTU=$(nvram get ppp_mtu) - MTU=${MTU:-1500} +KEEPALIVE=${ppp_redialperiod:+lcp-echo-interval $ppp_redialperiod lcp-echo-failure 5} +case "$ppp_demand" in + on|1|enabled) + DEMAND=${ppp_idletime:+demand idle $ppp_idletime} + [ -f /etc/ppp/filter ] && DEMAND=${DEMAND:+precompiled-active-filter /etc/ppp/filter $DEMAND} + ;; + *) DEMAND="persist";; +esac +MTU=${ppp_mtu:-1500} - /usr/sbin/pppd nodetach \ - plugin pppoatm.so ${VPI:-8}.${VCI:-35} \ - usepeerdns \ - defaultroute \ - linkname $type \ - user "$USERNAME" \ - password "$PASSWORD" \ - mtu $MTU mru $MTU \ - $IDLETIME \ - $REDIAL - - # Read settings again (might have changed) - [ -e /etc/config/network ] && . /etc/config/network -done & +/usr/sbin/pppd \ + plugin pppoatm.so ${atm_vpi:-8}.${atm_vci:-35} \ + usepeerdns \ + defaultroute \ + linkname $type \ + ipparam $type \ + user "$ppp_username" \ + password "$ppp_passwd" \ + mtu $MTU mru $MTU \ + $DEMAND \ + $KEEPALIVE