From 3bc4da3e856dc7ae96a0e2e25f41481309aa25ab Mon Sep 17 00:00:00 2001 From: yyhhyy <95077259+yyhhyyyyyy@users.noreply.github.com> Date: Sat, 30 Nov 2024 00:55:15 +0800 Subject: [PATCH] =?UTF-8?q?=F0=9F=90=9B=20fix:=20Dynamically=20set=20IPv6?= =?UTF-8?q?=20DNS=20configuration=20based=20on=20existing=20config=20(#219?= =?UTF-8?q?8)?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit thanks --- src-tauri/src/enhance/tun.rs | 13 ++++--------- 1 file changed, 4 insertions(+), 9 deletions(-) diff --git a/src-tauri/src/enhance/tun.rs b/src-tauri/src/enhance/tun.rs index c62f915d..f7484b6b 100644 --- a/src-tauri/src/enhance/tun.rs +++ b/src-tauri/src/enhance/tun.rs @@ -29,10 +29,12 @@ pub async fn use_tun(mut config: Mapping, enable: bool, origin_dns_val: Mapping) let mut dns_val = dns_val.map_or(Mapping::new(), |val| { val.as_mapping().cloned().unwrap_or(Mapping::new()) }); + let ipv6_key = Value::from("ipv6"); + let ipv6_val = config.get(&ipv6_key).and_then(|v| v.as_bool()).unwrap_or(false); if enable { revise!(dns_val, "enable", true); - revise!(dns_val, "ipv6", true); + revise!(dns_val, "ipv6", ipv6_val); revise!(dns_val, "enhanced-mode", "fake-ip"); revise!(dns_val, "fake-ip-range", "198.18.0.1/16"); #[cfg(target_os = "macos")] @@ -50,14 +52,7 @@ pub async fn use_tun(mut config: Mapping, enable: bool, origin_dns_val: Mapping) .unwrap_or(true) ); - revise!( - dns_val, - "ipv6", - origin_dns_val - .get("ipv6") - .and_then(|v| v.as_bool()) - .unwrap_or(true) - ); + revise!(dns_val, "ipv6", ipv6_val); revise!( dns_val,