From 4a50f9362f59995964765ea24280461cf54e7d3b Mon Sep 17 00:00:00 2001 From: Juha Heiskanen Date: Thu, 22 Dec 2022 10:09:05 +0200 Subject: [PATCH] net: lib: LwM2M rd client fix Fix LwM2M rd client stop call hang when Queue client is at RX_ON_IDLE_STATE. Added miossing connection resume for de-register functionality. Signed-off-by: Juha Heiskanen --- subsys/net/lib/lwm2m/lwm2m_rd_client.c | 7 +++++++ 1 file changed, 7 insertions(+) diff --git a/subsys/net/lib/lwm2m/lwm2m_rd_client.c b/subsys/net/lib/lwm2m/lwm2m_rd_client.c index f95a48bfe0b..08d409449d1 100644 --- a/subsys/net/lib/lwm2m/lwm2m_rd_client.c +++ b/subsys/net/lib/lwm2m/lwm2m_rd_client.c @@ -1115,6 +1115,13 @@ static int sm_do_deregister(void) struct lwm2m_message *msg; int ret; + if (lwm2m_engine_connection_resume(client.ctx)) { + lwm2m_engine_context_close(client.ctx); + /* Connection failed, enter directly to deregistered state */ + set_sm_state(ENGINE_DEREGISTERED); + return 0; + } + msg = rd_get_message(); if (!msg) { LOG_ERR("Unable to get a lwm2m message!");