summaryrefslogtreecommitdiff
path: root/openwrt/package/pptp/files/ifup.pptp
diff options
context:
space:
mode:
authornbd <nbd@3c298f89-4303-0410-b956-a3cf2f4a3e73>2005-07-16 14:05:46 +0000
committernbd <nbd@3c298f89-4303-0410-b956-a3cf2f4a3e73>2005-07-16 14:05:46 +0000
commit6f08fda54e6f2b58c2972cb542042ed7c03e3540 (patch)
tree3a959a2aa517979eb9e6f222f84a291f2b9b82f8 /openwrt/package/pptp/files/ifup.pptp
parent92efe0ea18e0752bf8f78e9257094e3fe76ec5a4 (diff)
update pptp in head to whiterussian version
git-svn-id: svn://svn.openwrt.org/openwrt/trunk@1464 3c298f89-4303-0410-b956-a3cf2f4a3e73
Diffstat (limited to 'openwrt/package/pptp/files/ifup.pptp')
-rw-r--r--openwrt/package/pptp/files/ifup.pptp43
1 files changed, 43 insertions, 0 deletions
diff --git a/openwrt/package/pptp/files/ifup.pptp b/openwrt/package/pptp/files/ifup.pptp
new file mode 100644
index 0000000000..21a574acb7
--- /dev/null
+++ b/openwrt/package/pptp/files/ifup.pptp
@@ -0,0 +1,43 @@
+#!/bin/sh
+. /etc/functions.sh
+type=$1
+
+[ "$(nvram get ${type}_proto)" = "pptp" ] || exit
+
+[ -d "/var/lock" ] || mkdir -p /var/lock || exit 1
+
+for module in slhc ppp_generic ppp_async ip_gre; do
+ /sbin/insmod $module 2>&- >&-
+done
+
+if=$(nvram get pptp_ifname)
+ip=$(nvram get ${type}_ipaddr)
+netmask=$(nvram get ${type}_netmask)
+[ -z "$ip" -o -z "$if" ] || ifconfig $if $ip ${netmask:+netmask $netmask} broadcast + up
+
+while :; do
+ IP=$(nvram get pptp_server_ip)
+ 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}
+ MTU=$(nvram get ppp_mtu)
+ MTU=${MTU:+ mtu $MTU mru $MTU}
+
+ /usr/sbin/pppd nodetach \
+ pty "/usr/sbin/pptp $IP --loglevel 0 --nolaunchpppd" \
+ file /etc/ppp/options.pptp \
+ connect /bin/true \
+ usepeerdns \
+ defaultroute \
+ linkname $type \
+ user "$USERNAME" \
+ password "$PASSWORD" \
+ $MTU \
+ $IDLETIME \
+ $REDIAL \
+ $IFNAME
+done &
+