From 757d76c9da63cc1487ab32373eb4e8448d8d511a Mon Sep 17 00:00:00 2001 From: "Sijie.Sun" Date: Mon, 15 Sep 2025 22:52:58 +0800 Subject: [PATCH] fix stun server list empty when config is from web (#1371) --- easytier/src/common/global_ctx.rs | 4 ++-- easytier/src/easytier-core.rs | 24 +++--------------------- 2 files changed, 5 insertions(+), 23 deletions(-) diff --git a/easytier/src/common/global_ctx.rs b/easytier/src/common/global_ctx.rs index a6f0b978..a234be14 100644 --- a/easytier/src/common/global_ctx.rs +++ b/easytier/src/common/global_ctx.rs @@ -119,13 +119,13 @@ impl GlobalCtx { if let Some(stun_servers) = config_fs.get_stun_servers() { stun_info_collector.set_stun_servers(stun_servers); } else { - stun_info_collector.set_stun_servers(Vec::new()); + stun_info_collector.set_stun_servers(StunInfoCollector::get_default_servers()); } if let Some(stun_servers) = config_fs.get_stun_servers_v6() { stun_info_collector.set_stun_servers_v6(stun_servers); } else { - stun_info_collector.set_stun_servers_v6(Vec::new()); + stun_info_collector.set_stun_servers_v6(StunInfoCollector::get_default_servers_v6()); } let stun_info_collector = Arc::new(stun_info_collector); diff --git a/easytier/src/easytier-core.rs b/easytier/src/easytier-core.rs index 1730c809..d6c19edc 100644 --- a/easytier/src/easytier-core.rs +++ b/easytier/src/easytier-core.rs @@ -24,7 +24,7 @@ use easytier::{ constants::EASYTIER_VERSION, global_ctx::GlobalCtx, set_default_machine_id, - stun::{MockStunInfoCollector, StunInfoCollector}, + stun::MockStunInfoCollector, }, connector::create_connector_by_url, instance_manager::NetworkInstanceManager, @@ -951,26 +951,8 @@ impl NetworkOptions { old_udp_whitelist.extend(self.udp_whitelist.clone()); cfg.set_udp_whitelist(old_udp_whitelist); - if let Some(stun_servers) = &self.stun_servers { - if stun_servers.is_empty() { - cfg.set_stun_servers(None); - } else { - cfg.set_stun_servers(Some(stun_servers.clone())); - } - } else { - cfg.set_stun_servers(Some(StunInfoCollector::get_default_servers())); - } - - if let Some(stun_servers) = &self.stun_servers_v6 { - if stun_servers.is_empty() { - cfg.set_stun_servers_v6(None); - } else { - cfg.set_stun_servers_v6(Some(stun_servers.clone())); - } - } else { - cfg.set_stun_servers_v6(Some(StunInfoCollector::get_default_servers_v6())); - } - + cfg.set_stun_servers(self.stun_servers.clone()); + cfg.set_stun_servers_v6(self.stun_servers_v6.clone()); Ok(()) } }