sc-network: Do not return error on peer id only reserved nodes (#11346)

When passing reserved nodes only with a peer id it was failing with the `DuplicateBootnode` error.
Besides that there are some clean ups. We for example added the bootnodes twice to the `known_addresses`.
This commit is contained in:
Bastian Köcher
2022-05-04 12:15:11 +02:00
committed by GitHub
parent 1e2424ec4b
commit 82adb65f1b
2 changed files with 15 additions and 9 deletions
+4 -2
View File
@@ -356,13 +356,15 @@ where
let mut default_sets_reserved = HashSet::new();
for reserved in network_config.default_peers_set.reserved_nodes.iter() {
default_sets_reserved.insert(reserved.peer_id);
known_addresses.push((reserved.peer_id, reserved.multiaddr.clone()));
if !reserved.multiaddr.is_empty() {
known_addresses.push((reserved.peer_id, reserved.multiaddr.clone()));
}
}
let mut bootnodes = Vec::with_capacity(network_config.boot_nodes.len());
for bootnode in network_config.boot_nodes.iter() {
bootnodes.push(bootnode.peer_id);
known_addresses.push((bootnode.peer_id, bootnode.multiaddr.clone()));
}
// Set number 0 is used for block announces.