#!/bin/sh . /etc/functions.sh IF_NAME=$1 PROTO=$(nvram get ${IF_NAME}_proto) [ "$PROTO" = "pppoe" ] || exit 0 for module in slhc ppp_generic pppox pppoe; do /sbin/insmod $module 2>/dev/null >/dev/null done ( while true; do 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} MTUV=$(nvram get ppp_mtu) MTU=${MTUV:+mtu $MTUV} MRU=${MTUV:+mru $MTUV} ifconfig $IFNAME up echo -e "plugin rp-pppoe.so\nconnect /bin/true\nusepeerdns\ndefaultroute\nuser \"$USERNAME\"\npassword \"$PASSWORD\"\n$MTU\n$MRU\n$IDLETIME\n$REDIAL" > /tmp/.pppoe-data /usr/sbin/pppd nodetach file /tmp/.pppoe-data $IFNAME done ) &