mesh: accept secure network beacons with old and new keys for rate calculation

This commit is contained in:
Matthias Ringwald 2019-07-04 13:43:02 +02:00
parent 7bddfece57
commit 569f13d032

View File

@ -274,9 +274,12 @@ static void beacon_handle_secure_beacon(uint8_t * packet, uint16_t size){
mesh_subnet_t * subnet = NULL; mesh_subnet_t * subnet = NULL;
while (mesh_subnet_iterator_has_more(&it)){ while (mesh_subnet_iterator_has_more(&it)){
mesh_subnet_t * item = mesh_subnet_iterator_get_next(&it); mesh_subnet_t * item = mesh_subnet_iterator_get_next(&it);
// TODO: handle old/new keys if (memcmp(item->old_key->network_id, beacon_network_id, 8) == 0 ) {
if (memcmp(item->old_key->network_id, beacon_network_id, 8) != 0 ) continue;
subnet = item; subnet = item;
}
if (item->new_key != NULL && memcmp(item->new_key->network_id, beacon_network_id, 8) == 0 ) {
subnet = item;
}
break; break;
} }
if (subnet == NULL) return; if (subnet == NULL) return;