fix: 修复更新路由启动两次TUN问题,并调整日志

This commit is contained in:
FrankHan
2026-05-08 16:16:46 +08:00
parent 006783f0f9
commit f030e3ab36
2 changed files with 12 additions and 4 deletions
@@ -2,6 +2,7 @@ use crate::config::repository::load_config_json;
use crate::runtime::state::runtime_state::RuntimeInstanceState;
use easytier::proto::api::manage::NetworkConfig;
use ipnet::IpNet;
use ohos_hilog_binding::hilog_debug;
use std::collections::HashSet;
pub(crate) fn load_manual_routes(config_id: &str) -> Vec<String> {
@@ -70,7 +71,14 @@ pub(crate) fn aggregate_tun_routes(instance: &RuntimeInstanceState) -> Vec<Strin
raw_routes.extend(manual_routes.iter().cloned());
raw_routes.extend(proxy_cidrs.iter().cloned());
simplify_routes(raw_routes)
let aggregated_routes = simplify_routes(raw_routes);
hilog_debug!(
"[Rust] aggregate_tun_routes instance={} proxy_cidrs={:?} aggregated_routes={:?}",
instance.instance_id,
proxy_cidrs,
aggregated_routes
);
aggregated_routes
}
pub(crate) fn aggregate_requested_tun_routes(instances: &[RuntimeInstanceState]) -> Vec<String> {
@@ -1,8 +1,7 @@
use super::protocol::{TunRequestPayload, broadcast_local_socket_message};
use super::routing::aggregate_tun_routes;
use super::protocol::{broadcast_local_socket_message, TunRequestPayload};
use crate::config::repository::kernel_socket_path;
use crate::get_runtime_snapshot_inner;
use ohos_hilog_binding::hilog_error;
use ohos_hilog_binding::{hilog_error, hilog_info};
use once_cell::sync::Lazy;
use std::collections::{HashMap, HashSet};
use std::io::ErrorKind;
@@ -12,6 +11,7 @@ use std::sync::Mutex;
use std::sync::atomic::{AtomicBool, Ordering};
use std::thread::{self, JoinHandle};
use std::time::Duration;
use crate::kernel_bridge::routing::aggregate_tun_routes;
struct LocalSocketState {
stop_flag: std::sync::Arc<AtomicBool>,