File tree Expand file tree Collapse file tree 1 file changed +4
-10
lines changed Expand file tree Collapse file tree 1 file changed +4
-10
lines changed Original file line number Diff line number Diff line change @@ -545,8 +545,7 @@ static rpl_dao_target_t *rpl_instance_choose_target_to_assign(rpl_instance_t *in
545
545
*/
546
546
ns_list_foreach (rpl_neighbour_t , neighbour , & instance -> candidate_neighbours ) {
547
547
if (neighbour -> dao_path_control & unassigned_pc ) {
548
- unassigned_pc &= neighbour -> dao_path_control ;
549
- * path_control = unassigned_pc ;
548
+ * path_control = neighbour -> dao_path_control ;
550
549
* parent = neighbour ;
551
550
return target ;
552
551
}
@@ -561,14 +560,7 @@ static rpl_dao_target_t *rpl_instance_choose_target_to_assign(rpl_instance_t *in
561
560
}
562
561
}
563
562
564
- /* If looking for a follow-up target, final path control must match */
565
- if (t1 ) {
566
- if (unassigned_pc != * path_control ) {
567
- continue ;
568
- }
569
- } else {
570
- * path_control = unassigned_pc ;
571
- }
563
+ * path_control = target -> path_control ;
572
564
return target ;
573
565
}
574
566
@@ -1811,6 +1803,8 @@ static void rpl_instance_address_registration_cancel(rpl_instance_t *instance)
1811
1803
instance -> wait_response = NULL ;
1812
1804
instance -> pending_neighbour_confirmation = false;
1813
1805
instance -> delay_dao_timer = 0 ;
1806
+ instance -> dao_in_transit = false;
1807
+ instance -> dao_retry_timer = 0 ;
1814
1808
}
1815
1809
1816
1810
void rpl_instance_parent_address_reg_timer_update (rpl_instance_t * instance , uint16_t seconds )
You can’t perform that action at this time.
0 commit comments