From 1c6ea0d362f691d3455ae53ffae605a5b05e4c08 Mon Sep 17 00:00:00 2001 From: =?utf8?q?Micha=C5=82=20Lowas-Rzechonek?= Date: Tue, 11 Aug 2020 21:37:09 +0200 Subject: [PATCH] mesh: Fix encoding of Config Key Refresh Phase Status Config Key Refresh Phase Status is 4 octets long (see Mesh Profile v1.0.1, section 4.3.2.60): 1 octet for status, 2 octets for net key index, 1 octet for the phase. Change-Id: I7c9ab88fc8ea469ed4b354b3e746cdf9c1f000c3 Signed-off-by: anuj.bhumiya --- mesh/cfgmod-server.c | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/mesh/cfgmod-server.c b/mesh/cfgmod-server.c index 52a0e02..8fca756 100644 --- a/mesh/cfgmod-server.c +++ b/mesh/cfgmod-server.c @@ -446,11 +446,11 @@ static uint16_t cfg_key_refresh_phase(struct mesh_node *node, done: msg[n] = status; - l_put_le16(idx, msg + n); - msg[n + 2] = (status != MESH_STATUS_SUCCESS) ? + l_put_le16(idx, &msg[n + 1]); + msg[n + 3] = (status != MESH_STATUS_SUCCESS) ? KEY_REFRESH_PHASE_NONE : phase; - return n + 3; + return n + 4; } static uint8_t uint32_to_log(uint32_t value) -- 2.7.4