X-Git-Url: https://git.rohieb.name/openwrt.git/blobdiff_plain/dbaacabc746996a72ed62bd7d28ecafc4db4da68..a6dddaa10e79549d1ea8a2aa5228ca879416eba3:/package/ppp/files/ifup.pppoe?ds=sidebyside diff --git a/package/ppp/files/ifup.pppoe b/package/ppp/files/ifup.pppoe index 2bec9c6fe..36bbe3029 100644 --- a/package/ppp/files/ifup.pppoe +++ b/package/ppp/files/ifup.pppoe @@ -1,7 +1,7 @@ #!/bin/sh [ $# = 0 ] && { echo " $0 "; exit; } . /etc/functions.sh -. /etc/nvram.overrides +. /etc/network.overrides [ -e /etc/config/network ] && . /etc/config/network type=$1 @@ -15,16 +15,21 @@ for module in slhc ppp_generic pppox pppoe; do done while :; do - IFNAME=nic-$(nvram get pppoe_ifname) + IFNAME=$(nvram get pppoe_ifname) 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} + KEEPALIVE=$(nvram get ppp_redialperiod) + KEEPALIVE=${KEEPALIVE:+lcp-echo-interval 10 lcp-echo-failure $KEEPALIVE} + DEMAND=$(nvram get ppp_demand) + case "$DEMAND" in + on|1|enabled) + DEMAND=$(nvram get ppp_idletime) + DEMAND=${IDLETIME:+demand idle $IDLETIME} + ;; + *) DEMAND="";; + esac MTU=$(nvram get ppp_mtu) MTU=${MTU:-1492} - MTU=${MTU:+ mtu $MTU mru $MTU} ifconfig $IFNAME up /usr/sbin/pppd nodetach \ @@ -33,10 +38,14 @@ while :; do usepeerdns \ defaultroute \ linkname $type \ + ipparam $type \ user "$USERNAME" \ password "$PASSWORD" \ - $MTU \ - $IDLETIME \ - $REDIAL \ - $IFNAME + mtu $MTU mru $MTU \ + $DEMAND \ + $KEEPALIVE \ + nic-$IFNAME + + # Read settings again (might have changed) + [ -e /etc/config/network ] && . /etc/config/network done &