2005-03-26 03:14:33 +02:00
|
|
|
#!/bin/sh
|
2005-07-15 19:56:23 +03:00
|
|
|
[ $# = 0 ] && { echo " $0 <group>"; exit; }
|
2006-04-05 05:09:22 +03:00
|
|
|
. /etc/config/network
|
2005-07-15 19:56:23 +03:00
|
|
|
type=$1
|
2005-03-26 03:14:33 +02:00
|
|
|
|
2006-04-05 05:09:22 +03:00
|
|
|
eval "proto=\"\${${type}_proto}\""
|
|
|
|
[ "$proto" = "pppoe" ] || {
|
2005-07-15 19:56:23 +03:00
|
|
|
echo "$0: ${type}_proto isn't pppoe"
|
|
|
|
exit
|
|
|
|
}
|
2005-03-26 03:14:33 +02:00
|
|
|
|
|
|
|
for module in slhc ppp_generic pppox pppoe; do
|
2005-07-15 19:56:23 +03:00
|
|
|
/sbin/insmod $module 2>&- >&-
|
2005-03-26 03:14:33 +02:00
|
|
|
done
|
|
|
|
|
2006-04-05 05:09:22 +03:00
|
|
|
eval "IFNAME=\"\${${type}_device}\""
|
|
|
|
KEEPALIVE=${ppp_redialperiod:+lcp-echo-interval $ppp_redialperiod lcp-echo-failure 5}
|
|
|
|
case "$ppp_demand" in
|
2005-11-19 05:17:20 +02:00
|
|
|
on|1|enabled)
|
2006-04-05 05:09:22 +03:00
|
|
|
DEMAND=${ppp_idletime:+demand idle $ppp_idletime}
|
2006-03-18 19:27:20 +02:00
|
|
|
[ -f /etc/ppp/filter ] && DEMAND=${DEMAND:+precompiled-active-filter /etc/ppp/filter $DEMAND}
|
2005-11-19 05:17:20 +02:00
|
|
|
;;
|
|
|
|
*) DEMAND="persist";;
|
|
|
|
esac
|
2006-04-05 05:09:22 +03:00
|
|
|
MTU=${ppp_mtu:-1492}
|
2005-11-19 05:17:20 +02:00
|
|
|
|
|
|
|
ifconfig $IFNAME up
|
2005-11-19 16:07:54 +02:00
|
|
|
/usr/sbin/pppd \
|
2005-11-19 05:17:20 +02:00
|
|
|
plugin rp-pppoe.so \
|
|
|
|
connect /bin/true \
|
|
|
|
usepeerdns \
|
|
|
|
defaultroute \
|
|
|
|
linkname $type \
|
|
|
|
ipparam $type \
|
2006-04-05 05:09:22 +03:00
|
|
|
user "$ppp_username" \
|
|
|
|
password "$ppp_passwd" \
|
2005-11-19 05:17:20 +02:00
|
|
|
mtu $MTU mru $MTU \
|
|
|
|
$DEMAND \
|
|
|
|
$KEEPALIVE \
|
|
|
|
nic-$IFNAME
|
2005-04-02 18:41:31 +03:00
|
|
|
|