From 3acf041d00a20b6c139e2a0202dafb29a1deecd4 Mon Sep 17 00:00:00 2001 From: Alex Auvolat Date: Thu, 9 Mar 2023 14:35:59 +0100 Subject: less useless actions --- src/main.rs | 12 +++++++++--- 1 file changed, 9 insertions(+), 3 deletions(-) diff --git a/src/main.rs b/src/main.rs index 192dd91..091335f 100644 --- a/src/main.rs +++ b/src/main.rs @@ -588,8 +588,14 @@ impl State { }; if !endpoints.is_empty() { - let endpoint = endpoints[i % endpoints.len()]; - info!("Configure {} with endpoint {}", peer_cfg.pubkey, endpoint.0); + let endpoint = endpoints[i % endpoints.len()].0; + + if self.peers.get(&peer_cfg.pubkey).map(|x| x.endpoint == Some(endpoint)).unwrap_or(false) { + // Skip if we are already using that endpoint + continue; + } + + info!("Configure {} with endpoint {}", peer_cfg.pubkey, endpoint); Command::new("wg") .args([ "set", @@ -597,7 +603,7 @@ impl State { "peer", &peer_cfg.pubkey, "endpoint", - &endpoint.0.to_string(), + &endpoint.to_string(), "persistent-keepalive", "10", "allowed-ips", -- cgit v1.2.3