summaryrefslogtreecommitdiffstats
path: root/openwrt/package/ppp/ipkg/ppp-pppoe-plugin/etc/init.d/S50pppoe
blob: 5d6ca5f3a9d7a099b9e041ca958e81decae3b395 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
#!/bin/sh

. /etc/functions.sh

WAN_PROTO=$(nvram get wan_proto)
[ "$WAN_PROTO" = "pppoe" ] || exit 0

for module in slhc ppp_generic pppox pppoe; do
	/sbin/insmod $module 2>/dev/null >/dev/null
done

IFNAME=$(nvram get pppoe_ifname)
USERNAME=$(nvram get ppp_username)
PASSWORD=$(nvram get ppp_passwd)
REDIAL=$(nvram get ppp_redialperiod)
REDIAL=${REDIAL:+holdoff $REDIAL}
IDLETIME=$(nvram get ppp_idletime)
IDLETIME=${IDLETIME:+idle $IDLETIME}
MTU=$(nvram get ppp_mtu)

ifconfig $IFNAME up
echo -e "plugin rp-pppoe.so\nconnect /bin/true\nusepeerdns\ndefaultroute\nuser \"$USERNAME\"\npassword \"$PASSWORD\"\nmtu $MTU\n$IDLETIME\n$REDIAL" > /tmp/.pppoe-data
(
	while true; do
		/usr/sbin/pppd nodetach file /tmp/.pppoe-data $IFNAME
	done
) &