aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorFelix Fietkau <nbd@openwrt.org>2014-10-02 12:19:26 +0000
committerFelix Fietkau <nbd@openwrt.org>2014-10-02 12:19:26 +0000
commitbf4cab37b77441ebd3b5b42d5f3bac9b22706f23 (patch)
tree5ebe1542e276771508cc146c2bfd146521d7e253
parent179bfca03865451c5e47b3cb80a5bf8841749e0a (diff)
downloadupstream-bf4cab37b77441ebd3b5b42d5f3bac9b22706f23.tar.gz
upstream-bf4cab37b77441ebd3b5b42d5f3bac9b22706f23.tar.bz2
upstream-bf4cab37b77441ebd3b5b42d5f3bac9b22706f23.zip
uqmi: do not wait for network connection before starting dhcp
Signed-off-by: Felix Fietkau <nbd@openwrt.org> SVN-Revision: 42723
-rwxr-xr-xpackage/network/utils/uqmi/files/lib/netifd/proto/qmi.sh20
1 files changed, 9 insertions, 11 deletions
diff --git a/package/network/utils/uqmi/files/lib/netifd/proto/qmi.sh b/package/network/utils/uqmi/files/lib/netifd/proto/qmi.sh
index 0e5e2e03f2..deba489897 100755
--- a/package/network/utils/uqmi/files/lib/netifd/proto/qmi.sh
+++ b/package/network/utils/uqmi/files/lib/netifd/proto/qmi.sh
@@ -25,6 +25,13 @@ qmi_disconnect() {
--autoconnect > /dev/null
}
+qmi_wds_release() {
+ [ -n "$cid" ] || return 0
+
+ uqmi -s -d "$device" --set-client-id wds,"$cid" --release-client-id wds
+ uci_revert_state network $interface cid
+}
+
proto_qmi_setup() {
local interface="$1"
@@ -101,13 +108,7 @@ proto_qmi_setup() {
${password:+--password $password} \
--autoconnect > /dev/null
- if ! uqmi -s -d "$device" --get-data-status | grep '"connected"' > /dev/null; then
- echo "Connection lost"
- proto_notify_error "$interface" NOT_CONNECTED
- return 1
- fi
-
- echo "Connected, starting DHCP"
+ echo "Starting DHCP"
proto_init_update "$ifname" 1
proto_send_update "$interface"
@@ -135,10 +136,7 @@ proto_qmi_teardown() {
echo "Stopping network"
qmi_disconnect
- [ -n "$cid" ] && {
- uqmi -s -d "$device" --set-client-id wds,"$cid" --release-client-id wds
- uci_revert_state network $interface cid
- }
+ qmi_wds_release
proto_init_update "*" 0
proto_send_update "$interface"