diff options
Diffstat (limited to 'package/ppp/files.old/etc/ppp/ip-up')
-rwxr-xr-x | package/ppp/files.old/etc/ppp/ip-up | 37 |
1 files changed, 37 insertions, 0 deletions
diff --git a/package/ppp/files.old/etc/ppp/ip-up b/package/ppp/files.old/etc/ppp/ip-up new file mode 100755 index 0000000000..353f667895 --- /dev/null +++ b/package/ppp/files.old/etc/ppp/ip-up @@ -0,0 +1,37 @@ +#!/bin/sh + +. /etc/functions.sh +. /lib/network/config.sh + +PPP_IFACE="$1" +PPP_TTY="$2" +PPP_SPEED="$3" +PPP_LOCAL="$4" +PPP_REMOTE="$5" +PPP_IPPARAM="$(echo $6 | sed 's/\./_/g')" + +export PPP_IFACE PPP_TTY PPP_SPEED PPP_LOCAL PPP_REMOTE PPP_IPPARAM +[ -z "$PPP_IPPARAM" -o -z "$PPP_LOCAL" ] || { + uci_set_state network "$PPP_IPPARAM" ifname "$PPP_IFACE" + uci_set_state network "$PPP_IPPARAM" ipaddr "$PPP_LOCAL" + uci_set_state network "$PPP_IPPARAM" gateway "$PPP_REMOTE" + + local dns="$DNS1${DNS2:+ $DNS2}" + [ -n "$dns" ] && add_dns "$PPP_IPPARAM" $dns +} + +[ -z "$PPP_IPPARAM" ] || { + case "$PPP_IFACE" in + # only handle uci managed interfaces here, others are done by generic hotplug + 3g-*|ppp-*|pppoa-*|pppoe-*|pptp-*) + env -i ACTION="ifup" INTERFACE="$PPP_IPPARAM" DEVICE="$PPP_IFACE" PROTO=ppp /sbin/hotplug-call "iface" + ;; + esac +} + +[ -d /etc/ppp/ip-up.d ] && { + for SCRIPT in /etc/ppp/ip-up.d/* + do + [ -x "$SCRIPT" ] && "$SCRIPT" "$@" + done +} |