From f9ffa252f67b9d557641c0aa76399ea83f7007ab Mon Sep 17 00:00:00 2001 From: Laurent Deru Date: Wed, 16 Mar 2016 13:12:20 +0100 Subject: [PATCH] Reject parents with invalid rank --- core/net/rpl/rpl-dag.c | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/core/net/rpl/rpl-dag.c b/core/net/rpl/rpl-dag.c index 1eb6775c1..c4f3be14f 100644 --- a/core/net/rpl/rpl-dag.c +++ b/core/net/rpl/rpl-dag.c @@ -865,7 +865,10 @@ best_parent(rpl_dag_t *dag, int fresh_only) for(p = nbr_table_head(rpl_parents); p != NULL; p = nbr_table_next(rpl_parents, p)) { /* Exclude parents from other DAGs or announcing an infinite rank */ - if(p->dag != dag || p->rank == INFINITE_RANK) { + if(p->dag != dag || p->rank == INFINITE_RANK || p->rank < ROOT_RANK(dag->instance)) { + if(p->rank < ROOT_RANK(dag->instance)) { + PRINTF("RPL: Parent has invalid rank\n"); + } continue; }