summaryrefslogtreecommitdiffstats
path: root/package/comgt/files-old/3g.usb
diff options
context:
space:
mode:
authornbd <nbd@3c298f89-4303-0410-b956-a3cf2f4a3e73>2011-10-27 20:29:00 +0000
committernbd <nbd@3c298f89-4303-0410-b956-a3cf2f4a3e73>2011-10-27 20:29:00 +0000
commit6f48b8ea556c7da4ed75cb95571c02582771fae2 (patch)
treeecacc3c9263044b2b810a93fa37b329fc081c11b /package/comgt/files-old/3g.usb
parent77f19a70c2dc891422a8bb5019a5fc2a1047246a (diff)
comgt: port 3g.sh to netifd
git-svn-id: svn://svn.openwrt.org/openwrt/trunk@28634 3c298f89-4303-0410-b956-a3cf2f4a3e73
Diffstat (limited to 'package/comgt/files-old/3g.usb')
-rw-r--r--package/comgt/files-old/3g.usb42
1 files changed, 42 insertions, 0 deletions
diff --git a/package/comgt/files-old/3g.usb b/package/comgt/files-old/3g.usb
new file mode 100644
index 000000000..ba6c64617
--- /dev/null
+++ b/package/comgt/files-old/3g.usb
@@ -0,0 +1,42 @@
+#!/bin/sh
+
+. /etc/functions.sh
+
+log() {
+ logger -t 3g-hotplug "$@"
+}
+
+find_3g_iface() {
+ local cfg="$1"
+ local tty="$2"
+
+ local proto
+ config_get proto "$cfg" proto
+ [ "$proto" = 3g ] || return 0
+
+ local auto
+ config_get_bool auto "$cfg" auto 1
+ [ "$auto" = 1 ] || [ "$ACTION" = remove ] || return 0
+
+ local dev
+ config_get dev "$cfg" device
+
+ if [ "${dev##*/}" = "${tty##*/}" ]; then
+ if [ "$ACTION" = add ]; then
+ log "Starting interface $cfg for device ${dev##*/}"
+ ( sleep 1; /sbin/ifup "$cfg" ) &
+ else
+ log "Stopping interface $cfg for device ${dev##*/}"
+ /sbin/ifdown "$cfg" &
+ fi
+ fi
+}
+
+case "$DEVICENAME" in
+ tty*)
+ [ -e "/dev/$DEVICENAME" ] || [ "$ACTION" = remove ] || exit 0
+ config_load network
+ config_foreach find_3g_iface interface "/dev/$DEVICENAME"
+ ;;
+esac
+