comgt-ncm: do not attempt to connect if the control device is invalid
authorRozhuk Ivan <rozhuk.im@gmail.com>
Sat, 24 Aug 2019 16:41:01 +0000 (19:41 +0300)
committerJo-Philipp Wich <jo@mein.io>
Wed, 17 Jun 2020 21:14:46 +0000 (23:14 +0200)
commitba7ddae9a9d0aae9aaf00cfb2438286c2ee21098
treea67cd3862d2e2fe13a55bbf1ed82e5840d8280fe
parent8fe9940db66517679f09fa1d2f6f79229b6a8361
comgt-ncm: do not attempt to connect if the control device is invalid

After a hardware reconnect, the control device might be unavailable and
attempting to interact with it will lead to hanging gcom calls, leaving
the protocol setup in an unrecoverable state.

Change the protocol handler to bail out early and notify netifd if the
control device is not defined or if the underlying device node does not
exist.

Also ensure that the "disconnect", "connect" and "setmode" commands are
actually defined before trying to invoke them.

Finally attempt to re-query the device manufacturer if it is unset in
the interface state in order to prevent UNUPPORTED_MODEM errors after
a modem hardware reconnect.

Signed-off-by: Rozhuk Ivan <rozhuk.im@gmail.com>
[reword subject and commit message]
Ref: https://github.com/openwrt/openwrt/pull/2352
Signed-off-by: Jo-Philipp Wich <jo@mein.io>
package/network/utils/comgt/files/ncm.sh