| [6dabc65] | 1 | #!/bin/sh
|
|---|
| 2 |
|
|---|
| 3 | [ "$IFACE" == "hso0" ] || exit 0
|
|---|
| 4 |
|
|---|
| 5 | TTY=${IF_HSO_DEVICE:-/dev/usb/tth/0}
|
|---|
| 6 | [ -c "$TTY" ] || exit 0
|
|---|
| 7 |
|
|---|
| 8 | if [ "$IF_UMTS_PINCODE" ]; then
|
|---|
| 9 | COMGTPIN="$IF_UMTS_PINCODE" comgt -d "$TTY" PIN
|
|---|
| 10 | fi
|
|---|
| 11 |
|
|---|
| 12 | if [ "$IF_UMTS_APN" ]; then
|
|---|
| 13 | COMGTAPN="$IF_UMTS_APN" comgt -d "$TTY" APN
|
|---|
| 14 | fi
|
|---|
| 15 |
|
|---|
| 16 | if [ "$IF_HSO_USERNAME" ]; then
|
|---|
| 17 | USER="$IF_HSO_USERNAME" PASS="${IF_HSO_PASSWORD}" comgt -s -d "$TTY" /etc/comgt/hsoauth.comgt
|
|---|
| 18 | fi
|
|---|
| 19 |
|
|---|
| [4921c4d] | 20 | # load rc data to restart ntpd on demand
|
|---|
| 21 | . /etc/rc.conf
|
|---|
| 22 |
|
|---|
| [6dabc65] | 23 | # only run once!
|
|---|
| 24 | [ -f /tmp/hso-connect ] && exit 0
|
|---|
| 25 |
|
|---|
| 26 | while :
|
|---|
| 27 | do
|
|---|
| 28 | # get connection status
|
|---|
| 29 | STATUS=$(comgt -s -d "$TTY" /etc/comgt/hsostatus.comgt |
|
|---|
| 30 | tr -d " " |
|
|---|
| 31 | grep -v ^$ |
|
|---|
| 32 | cut -d , -f 2)
|
|---|
| 33 | # dial if connection status is disabled
|
|---|
| 34 | if [ "$STATUS" -eq "0" ] ; then
|
|---|
| 35 | comgt -s -d "$TTY" /etc/comgt/hsoconnect.comgt
|
|---|
| 36 | DATA=$(comgt -s -d "$TTY" /etc/comgt/hsodata.comgt)
|
|---|
| 37 | if [ "$?" -ne 0 ] ; then
|
|---|
| 38 | continue
|
|---|
| 39 | fi
|
|---|
| 40 | DATA=$(echo $DATA |
|
|---|
| 41 | tr -d " " |
|
|---|
| 42 | grep -v ^$)
|
|---|
| 43 | IP=$(echo $DATA | cut -d , -f 2)
|
|---|
| 44 | NS1=$(echo $DATA | cut -d , -f 4)
|
|---|
| 45 | NS2=$(echo $DATA | cut -d , -f 5)
|
|---|
| 46 | ip address flush dev hso0 2> /dev/null
|
|---|
| 47 | ip address add "$IP/32" dev hso0
|
|---|
| 48 | ip link set hso0 up
|
|---|
| 49 | ip route add default dev hso0
|
|---|
| 50 | echo "nameserver $NS1" > /tmp/resolv.conf
|
|---|
| 51 | echo "nameserver $NS2" >> /tmp/resolv.conf
|
|---|
| [4921c4d] | 52 |
|
|---|
| 53 |
|
|---|
| 54 | test x"${ntpd:-YES}" = x"YES" && /etc/init.d/S55ntpd restart
|
|---|
| 55 |
|
|---|
| [6dabc65] | 56 | fi
|
|---|
| 57 | sleep 10
|
|---|
| 58 | done &
|
|---|
| 59 |
|
|---|
| 60 | echo $! > /tmp/hso-connect
|
|---|
| 61 |
|
|---|