From cf55b70b4c4c8c3a9cb1bc5d74230dc877b0f75c Mon Sep 17 00:00:00 2001 From: Michael Scott Date: Mon, 30 Apr 2018 15:20:19 -0700 Subject: [PATCH] net: lwm2m: fix error code in read and write handlers When a data pointer or data length is not set, the read and write handlers should return ENOENT to generate the correct LwM2M error code (COAP_RESPONSE_CODE_NOT_FOUND). Signed-off-by: Michael Scott --- subsys/net/lib/lwm2m/lwm2m_engine.c | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/subsys/net/lib/lwm2m/lwm2m_engine.c b/subsys/net/lib/lwm2m/lwm2m_engine.c index 667edb57f0c..d29efd5370d 100644 --- a/subsys/net/lib/lwm2m/lwm2m_engine.c +++ b/subsys/net/lib/lwm2m/lwm2m_engine.c @@ -1870,7 +1870,7 @@ static int lwm2m_read_handler(struct lwm2m_engine_obj_inst *obj_inst, } if (!data_ptr || data_len == 0) { - return -EINVAL; + return -ENOENT; } if (res->multi_count_var != NULL) { @@ -2180,6 +2180,8 @@ int lwm2m_write_handler(struct lwm2m_engine_obj_inst *obj_inst, return -EINVAL; } + } else { + return -ENOENT; } if (res->post_write_cb &&