precompile ppp active filter (reduces libpcap overhead to only a few k), enable by...
[openwrt.git] / package / ppp / files / ifup.pppoe
index 4c42fa5bb26df14dccd3d16540240e08549ff07e..1f9cd739c349fbb47588cd49452398caabb7d1f2 100644 (file)
@@ -14,16 +14,17 @@ for module in slhc ppp_generic pppox pppoe; do
        /sbin/insmod $module 2>&- >&-
 done
 
-IFNAME=$(nvram get pppoe_ifname)
+IFNAME=$(nvram get ${type}_device)
 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}
+KEEPALIVE=${KEEPALIVE:+lcp-echo-interval 1 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}
+               [ -f /etc/ppp/filter ] && DEMAND=${DEMAND:+precompiled-active-filter /etc/ppp/filter $DEMAND}
        ;;
        *) DEMAND="persist";;
 esac
@@ -31,7 +32,7 @@ MTU=$(nvram get ppp_mtu)
 MTU=${MTU:-1492}
 
 ifconfig $IFNAME up
-/usr/sbin/pppd nodetach \
+/usr/sbin/pppd \
        plugin rp-pppoe.so \
        connect /bin/true \
        usepeerdns \