summaryrefslogtreecommitdiff
path: root/mesh/net.c
diff options
context:
space:
mode:
Diffstat (limited to 'mesh/net.c')
-rw-r--r--mesh/net.c4
1 files changed, 4 insertions, 0 deletions
diff --git a/mesh/net.c b/mesh/net.c
index dc3d1fd80..c225fdb9a 100644
--- a/mesh/net.c
+++ b/mesh/net.c
@@ -2671,6 +2671,10 @@ static bool update_iv_ivu_state(struct mesh_net *net, uint32_t iv_index,
if (iv_index == net->iv_index)
return false;
+ /* Ignore beacon with invalid IV index value */
+ if (net->iv_update && iv_index == net->iv_index + 1)
+ return false;
+
if (!net->iv_update) {
l_debug("iv_upd_state = IV_UPD_UPDATING");
net->iv_upd_state = IV_UPD_UPDATING;