From 7e819e14d16ab8f45e62a3d9d79ab0a306be7bf5 Mon Sep 17 00:00:00 2001 From: ardocrat Date: Sat, 15 Mar 2025 20:35:10 +0300 Subject: [PATCH] node: fix peers config saving --- src/node/config.rs | 32 ++++++++++++++------------------ src/node/node.rs | 4 ++-- 2 files changed, 16 insertions(+), 20 deletions(-) diff --git a/src/node/config.rs b/src/node/config.rs index 16737504..840913b0 100644 --- a/src/node/config.rs +++ b/src/node/config.rs @@ -69,62 +69,58 @@ impl PeersConfig { } /// Load saved peers to node server [`ConfigMembers`] config. - pub fn load_to_server_config() { - let mut w_config = Settings::node_config_to_update(); + pub fn load_to_server_config(config: &mut ConfigMembers) { // Load seeds. - for seed in w_config.peers.seeds.clone() { + let r_config = Settings::node_config_to_read(); + for seed in r_config.peers.seeds.clone() { if let Some(p) = Self::peer_to_addr(seed.to_string()) { - let mut seeds = w_config - .node + let mut seeds = config .server .p2p_config .seeds .clone() .unwrap_or(PeerAddrs::default()); seeds.peers.insert(seeds.peers.len(), p); - w_config.node.server.p2p_config.seeds = Some(seeds); + config.server.p2p_config.seeds = Some(seeds); } } // Load allowed peers. - for peer in w_config.peers.allowed.clone() { + for peer in r_config.peers.allowed.clone() { if let Some(p) = Self::peer_to_addr(peer.clone()) { - let mut allowed = w_config - .node + let mut allowed = config .server .p2p_config .peers_allow .clone() .unwrap_or(PeerAddrs::default()); allowed.peers.insert(allowed.peers.len(), p); - w_config.node.server.p2p_config.peers_allow = Some(allowed); + config.server.p2p_config.peers_allow = Some(allowed); } } // Load denied peers. - for peer in w_config.peers.denied.clone() { + for peer in r_config.peers.denied.clone() { if let Some(p) = Self::peer_to_addr(peer.clone()) { - let mut denied = w_config - .node + let mut denied = config .server .p2p_config .peers_deny .clone() .unwrap_or(PeerAddrs::default()); denied.peers.insert(denied.peers.len(), p); - w_config.node.server.p2p_config.peers_deny = Some(denied); + config.server.p2p_config.peers_deny = Some(denied); } } // Load preferred peers. - for peer in &w_config.peers.preferred.clone() { + for peer in &r_config.peers.preferred.clone() { if let Some(p) = Self::peer_to_addr(peer.clone()) { - let mut preferred = w_config - .node + let mut preferred = config .server .p2p_config .peers_preferred .clone() .unwrap_or(PeerAddrs::default()); preferred.peers.insert(preferred.peers.len(), p); - w_config.node.server.p2p_config.peers_preferred = Some(preferred); + config.server.p2p_config.peers_preferred = Some(preferred); } } } diff --git a/src/node/node.rs b/src/node/node.rs index 3d9e6227..4ec6d0d0 100644 --- a/src/node/node.rs +++ b/src/node/node.rs @@ -529,8 +529,8 @@ impl Node { /// Start the node [`Server`]. fn start_node_server() -> Result { // Setup server config. - PeersConfig::load_to_server_config(); - let config = NodeConfig::node_server_config(); + let mut config = NodeConfig::node_server_config(); + PeersConfig::load_to_server_config(&mut config); let mut server_config = config.server.clone(); // Setup Mainnet DNSSeed