From 55b93454dc62b68e6d8f0de21e2c77b88fc42666 Mon Sep 17 00:00:00 2001 From: Tunglies Date: Fri, 7 Nov 2025 20:08:39 +0800 Subject: [PATCH] fix: clippy errors with stable toolchain and default features (#1553) Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com> --- easytier/src/common/ifcfg/darwin.rs | 9 ++--- easytier/src/connector/dns_connector.rs | 7 +--- easytier/src/easytier-cli.rs | 2 +- easytier/src/easytier-core.rs | 2 +- .../gateway/fast_socks5/util/target_addr.rs | 2 +- .../instance/dns_server/server_instance.rs | 37 ++++++++++--------- .../dns_server/system_config/darwin.rs | 2 +- easytier/src/instance/dns_server/tests.rs | 2 +- easytier/src/peers/peer_ospf_route.rs | 4 +- 9 files changed, 32 insertions(+), 35 deletions(-) diff --git a/easytier/src/common/ifcfg/darwin.rs b/easytier/src/common/ifcfg/darwin.rs index 4394005..1da21e5 100644 --- a/easytier/src/common/ifcfg/darwin.rs +++ b/easytier/src/common/ifcfg/darwin.rs @@ -67,13 +67,10 @@ impl IfConfiguerTrait for MacIfConfiger { } async fn remove_ip(&self, name: &str, ip: Option) -> Result<(), Error> { - if ip.is_none() { - run_shell_cmd(format!("ifconfig {} inet delete", name).as_str()).await + if let Some(ip) = ip { + run_shell_cmd(format!("ifconfig {} inet {} delete", name, ip.address()).as_str()).await } else { - run_shell_cmd( - format!("ifconfig {} inet {} delete", name, ip.unwrap().address()).as_str(), - ) - .await + run_shell_cmd(format!("ifconfig {} inet delete", name).as_str()).await } } diff --git a/easytier/src/connector/dns_connector.rs b/easytier/src/connector/dns_connector.rs index 9a87576..6a7f805 100644 --- a/easytier/src/connector/dns_connector.rs +++ b/easytier/src/connector/dns_connector.rs @@ -130,11 +130,8 @@ impl DNSTunnelConnector { for record in response.iter() { let parsed_record = Self::handle_one_srv_record(record, protocol); tracing::info!(?parsed_record, ?srv_domain, "parsed_record"); - if parsed_record.is_err() { - eprintln!( - "got invalid srv record {:?}", - parsed_record.as_ref().unwrap_err() - ); + if let Err(e) = &parsed_record { + eprintln!("got invalid srv record {:?}", e); continue; } responses.insert(parsed_record.unwrap()); diff --git a/easytier/src/easytier-cli.rs b/easytier/src/easytier-cli.rs index 182d855..d7db7aa 100644 --- a/easytier/src/easytier-cli.rs +++ b/easytier/src/easytier-cli.rs @@ -10,7 +10,7 @@ use std::{ use anyhow::Context; use cidr::Ipv4Inet; -use clap::{command, Args, CommandFactory, Parser, Subcommand}; +use clap::{Args, CommandFactory, Parser, Subcommand}; use clap_complete::Shell; use dashmap::DashMap; use humansize::format_size; diff --git a/easytier/src/easytier-core.rs b/easytier/src/easytier-core.rs index 1493085..6448d37 100644 --- a/easytier/src/easytier-core.rs +++ b/easytier/src/easytier-core.rs @@ -1212,7 +1212,7 @@ async fn run_main(cli: Cli) -> anyhow::Result<()> { if let Some(config_files) = cli.config_file { let config_file_count = config_files.len(); for config_file in config_files { - let mut cfg = if config_file == PathBuf::from("-") { + let mut cfg = if config_file.as_os_str() == "-" { let mut stdin = String::new(); _ = tokio::io::stdin().read_to_string(&mut stdin).await?; TomlConfigLoader::new_from_str(stdin.as_str()) diff --git a/easytier/src/gateway/fast_socks5/util/target_addr.rs b/easytier/src/gateway/fast_socks5/util/target_addr.rs index 9700764..c0ac8e0 100644 --- a/easytier/src/gateway/fast_socks5/util/target_addr.rs +++ b/easytier/src/gateway/fast_socks5/util/target_addr.rs @@ -12,7 +12,7 @@ use thiserror::Error; use tokio::io::{AsyncRead, AsyncReadExt}; use tokio::net::lookup_host; -use tracing::{debug, error}; +use tracing::debug; /// SOCKS5 reply code #[derive(Error, Debug)] diff --git a/easytier/src/instance/dns_server/server_instance.rs b/easytier/src/instance/dns_server/server_instance.rs index dc83b0f..e182e10 100644 --- a/easytier/src/instance/dns_server/server_instance.rs +++ b/easytier/src/instance/dns_server/server_instance.rs @@ -492,16 +492,18 @@ impl MagicDnsServerInstance { let mut dns_server = Server::new(dns_config); dns_server.run().await?; - if !tun_inet.contains(&fake_ip) && tun_dev.is_some() { - let cost = if cfg!(target_os = "windows") { - Some(4) - } else { - None - }; - let ifcfg = IfConfiger {}; - ifcfg - .add_ipv4_route(tun_dev.as_ref().unwrap(), fake_ip, 32, cost) - .await?; + if !tun_inet.contains(&fake_ip) { + if let Some(tun_dev_name) = &tun_dev { + let cost = if cfg!(target_os = "windows") { + Some(4) + } else { + None + }; + let ifcfg = IfConfiger {}; + ifcfg + .add_ipv4_route(tun_dev_name, fake_ip, 32, cost) + .await?; + } } let data = Arc::new(MagicDnsServerInstanceData { @@ -544,13 +546,14 @@ impl MagicDnsServerInstance { if let Err(e) = ret { tracing::error!("Failed to close system config: {:?}", e); } - } - - if !self.tun_inet.contains(&self.data.fake_ip) && self.data.tun_dev.is_some() { - let ifcfg = IfConfiger {}; - let _ = ifcfg - .remove_ipv4_route(self.data.tun_dev.as_ref().unwrap(), self.data.fake_ip, 32) - .await; + if !self.tun_inet.contains(&self.data.fake_ip) { + if let Some(tun_dev_name) = &self.data.tun_dev { + let ifcfg = IfConfiger {}; + let _ = ifcfg + .remove_ipv4_route(tun_dev_name, self.data.fake_ip, 32) + .await; + } + } } let _ = self diff --git a/easytier/src/instance/dns_server/system_config/darwin.rs b/easytier/src/instance/dns_server/system_config/darwin.rs index 8217480..028c29a 100644 --- a/easytier/src/instance/dns_server/system_config/darwin.rs +++ b/easytier/src/instance/dns_server/system_config/darwin.rs @@ -12,8 +12,8 @@ const MAC_RESOLVER_FILE_HEADER: &str = "# Added by easytier\n"; const ETC_RESOLVER: &str = "/etc/resolver"; const ETC_RESOLV_CONF: &str = "/etc/resolv.conf"; +#[derive(Default)] pub struct DarwinConfigurator {} - impl DarwinConfigurator { pub fn new() -> Self { DarwinConfigurator {} diff --git a/easytier/src/instance/dns_server/tests.rs b/easytier/src/instance/dns_server/tests.rs index f7e3a8f..4853362 100644 --- a/easytier/src/instance/dns_server/tests.rs +++ b/easytier/src/instance/dns_server/tests.rs @@ -102,7 +102,7 @@ async fn test_magic_dns_server_instance() { .await .unwrap(); - let routes = vec![ + let routes = [ Route { hostname: "test1".to_string(), ipv4_addr: Some(Ipv4Inet::from_str("8.8.8.8/24").unwrap().into()), diff --git a/easytier/src/peers/peer_ospf_route.rs b/easytier/src/peers/peer_ospf_route.rs index d294fa3..ace1ca5 100644 --- a/easytier/src/peers/peer_ospf_route.rs +++ b/easytier/src/peers/peer_ospf_route.rs @@ -2156,9 +2156,9 @@ impl OspfRouteRpc for RouteSessionManager { let peer_infos = request.peer_infos.map(|x| x.items); let conn_info = request.conn_info; let foreign_network = request.foreign_network_infos; - let raw_peer_infos = if peer_infos.is_some() { + let raw_peer_infos = if let Some(peer_infos_ref) = &peer_infos { let r = get_raw_peer_infos(&mut ctrl.get_raw_input().unwrap()).unwrap(); - assert_eq!(r.len(), peer_infos.as_ref().unwrap().len()); + assert_eq!(r.len(), peer_infos_ref.len()); Some(r) } else { None