-while :; do
- PPTP_PROTO="$(nvram get pptp_proto)"
- [ "$PPTP_PROTO" = "static" ] || PPTP_PROTO=""
- PPTP_PROTO="${PPTP_PROTO:-dhcp}"
- IP=$(nvram get pptp_server_ip)
- USERNAME=$(nvram get ppp_username)
- PASSWORD=$(nvram get ppp_passwd)
- 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:-1452}
+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:-1452}