diff options
-rwxr-xr-x | src/conf_mode/interfaces-wirelessmodem.py | 1 | ||||
-rwxr-xr-x | src/etc/ppp/ip-down.d/0020-wirelessmodem | 18 | ||||
-rwxr-xr-x | src/etc/ppp/ip-up.d/0020-wirelessmodem | 18 |
3 files changed, 37 insertions, 0 deletions
diff --git a/src/conf_mode/interfaces-wirelessmodem.py b/src/conf_mode/interfaces-wirelessmodem.py index 05a844ac8..9efad3b8d 100755 --- a/src/conf_mode/interfaces-wirelessmodem.py +++ b/src/conf_mode/interfaces-wirelessmodem.py @@ -31,6 +31,7 @@ config_wwan_tmpl = """### Autogenerated by interfaces-wirelessmodem.py ### {% if description %} # {{ description }} {% endif %} +ifname {{ intf }} ipparam "{{ intf }} {{ metric }}" linkname {{ intf }} {% if name_server -%} diff --git a/src/etc/ppp/ip-down.d/0020-wirelessmodem b/src/etc/ppp/ip-down.d/0020-wirelessmodem new file mode 100755 index 000000000..c93c7cabe --- /dev/null +++ b/src/etc/ppp/ip-down.d/0020-wirelessmodem @@ -0,0 +1,18 @@ +#!/bin/sh + +tty=$2 +ipparam=$6 + +# Only applicable for Wireless Modems (WWAN) +if [ -z "$(echo $tty | egrep "tty(USB|ACM)")" ]; then + exit 0 +fi + +# device name and metric are received using ipparam +device=`echo "$ipparam"|awk '{ print $1 }'` +metric=`echo "$ipparam"|awk '{ print $2 }'` + +vtysh -c "conf t" -c "no ip route 0.0.0.0/0 ${device} ${metric}" + +DIALER_PID=$(cat /var/run/${device}.pid) +logger -t pppd[$DIALER_PID] "removed default route via $device metric $metric" diff --git a/src/etc/ppp/ip-up.d/0020-wirelessmodem b/src/etc/ppp/ip-up.d/0020-wirelessmodem new file mode 100755 index 000000000..95549387b --- /dev/null +++ b/src/etc/ppp/ip-up.d/0020-wirelessmodem @@ -0,0 +1,18 @@ +#!/bin/sh + +tty=$2 +ipparam=$6 + +# Only applicable for Wireless Modems (WWAN) +if [ -z "$(echo $tty | egrep "tty(USB|ACM)")" ]; then + exit 0 +fi + +# device name and metric are received using ipparam +device=`echo "$ipparam"|awk '{ print $1 }'` +metric=`echo "$ipparam"|awk '{ print $2 }'` + +vtysh -c "conf t" -c "ip route 0.0.0.0/0 ${device} ${metric}" + +DIALER_PID=$(cat /var/run/${device}.pid) +logger -t pppd[$DIALER_PID] "added default route via $device metric $metric" |