|
|
|
@ -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"
|
|
|
|
|