44f660bef13d874c0095716bf531b643aaf8a276
[openwrt.git] / package / ppp / files.old / etc / ppp / ip-up
1 #!/bin/sh
2
3 . /etc/functions.sh
4 . /lib/network/config.sh
5
6 PPP_IFACE="$1"
7 PPP_TTY="$2"
8 PPP_SPEED="$3"
9 PPP_LOCAL="$4"
10 PPP_REMOTE="$5"
11 PPP_IPPARAM="$(echo $6 | sed 's/\./_/g')"
12
13 export PPP_IFACE PPP_TTY PPP_SPEED PPP_LOCAL PPP_REMOTE PPP_IPPARAM
14 [ -z "$PPP_IPPARAM" -o -z "$PPP_LOCAL" ] || {
15         uci_set_state network "$PPP_IPPARAM" ifname "$PPP_IFACE"
16         uci_set_state network "$PPP_IPPARAM" ipaddr "$PPP_LOCAL"
17         uci_set_state network "$PPP_IPPARAM" gateway "$PPP_REMOTE"
18
19         local dns="$DNS1${DNS2:+ $DNS2}"
20         [ -n "$dns" ] && add_dns "$PPP_IPPARAM" $dns
21 }
22
23 [ -z "$PPP_IPPARAM" ] || {
24         case "$PPP_IFACE" in
25                 # only handle uci managed interfaces here, others are done by generic hotplug
26                 3g-*|ppp-*|pppoa-*|pppoe-*|pptp-*|l2tp-*)
27                         env -i ACTION="ifup" INTERFACE="$PPP_IPPARAM" DEVICE="$PPP_IFACE" PROTO=ppp /sbin/hotplug-call "iface"
28                 ;;
29         esac
30 }
31
32 [ -d /etc/ppp/ip-up.d ] && {
33         for SCRIPT in /etc/ppp/ip-up.d/*
34         do
35                 [ -x "$SCRIPT" ] && "$SCRIPT" "$@"
36         done
37 }