This commit is contained in:
Luna Yao
2026-04-17 18:59:11 +02:00
parent cbdfdfacc1
commit b070cff8e2
5 changed files with 23 additions and 8 deletions
+8 -3
View File
@@ -6,9 +6,9 @@ use std::{
}; };
use anyhow::Context; use anyhow::Context;
use base64::{prelude::BASE64_STANDARD, Engine as _}; use base64::{Engine as _, prelude::BASE64_STANDARD};
use clap::builder::PossibleValue;
use clap::ValueEnum; use clap::ValueEnum;
use clap::builder::PossibleValue;
use serde::{Deserialize, Serialize}; use serde::{Deserialize, Serialize};
use strum::{Display, EnumString, VariantArray}; use strum::{Display, EnumString, VariantArray};
use tokio::io::AsyncReadExt as _; use tokio::io::AsyncReadExt as _;
@@ -584,7 +584,12 @@ impl ConfigLoader for TomlConfigLoader {
.filter(|h| !h.is_empty()); .filter(|h| !h.is_empty());
self.set_hostname(hostname.clone()); self.set_hostname(hostname.clone());
hostname.unwrap_or_else(|| hostname::get().unwrap_or_default().to_string_lossy().into_owned()) hostname.unwrap_or_else(|| {
hostname::get()
.unwrap_or_default()
.to_string_lossy()
.into_owned()
})
} }
fn set_hostname(&self, name: Option<String>) { fn set_hostname(&self, name: Option<String>) {
+2 -2
View File
@@ -6,7 +6,7 @@ use sha2::Sha256;
use socket2::Protocol; use socket2::Protocol;
use std::sync::RwLock; use std::sync::RwLock;
use std::{ use std::{
collections::{hash_map::DefaultHasher, HashMap}, collections::{HashMap, hash_map::DefaultHasher},
hash::Hasher, hash::Hasher,
iter, iter,
net::{IpAddr, SocketAddr}, net::{IpAddr, SocketAddr},
@@ -15,11 +15,11 @@ use std::{
}; };
use super::{ use super::{
PeerId,
config::{ConfigLoader, Flags}, config::{ConfigLoader, Flags},
netns::NetNS, netns::NetNS,
network::IPCollector, network::IPCollector,
stun::{StunInfoCollector, StunInfoCollectorTrait}, stun::{StunInfoCollector, StunInfoCollectorTrait},
PeerId,
}; };
#[cfg(feature = "magic-dns")] #[cfg(feature = "magic-dns")]
use crate::dns::{ use crate::dns::{
+6 -1
View File
@@ -51,7 +51,12 @@ impl DnsConfig {
impl DnsConfig { impl DnsConfig {
pub fn get_name(&self) -> LowerName { pub fn get_name(&self) -> LowerName {
if self.name.is_empty() { if self.name.is_empty() {
parse(hostname::get().unwrap_or_default().to_string_lossy().as_ref()) parse(
hostname::get()
.unwrap_or_default()
.to_string_lossy()
.as_ref(),
)
} else { } else {
self.name.clone() self.name.clone()
} }
+1 -1
View File
@@ -72,7 +72,7 @@ impl ProxyCidrsMonitor {
pub fn start(self) -> ScopedTask<()> { pub fn start(self) -> ScopedTask<()> {
ScopedTask::from(tokio::spawn(async move { ScopedTask::from(tokio::spawn(async move {
let mut cur_proxy_cidrs = BTreeSet::new(); let mut cur_proxy_cidrs = BTreeSet::new();
// let last_update = None::<Instant>; // let mut last_update = None::<Instant>;
loop { loop {
tokio::time::sleep(std::time::Duration::from_secs(1)).await; tokio::time::sleep(std::time::Duration::from_secs(1)).await;
+6 -1
View File
@@ -225,7 +225,12 @@ pub async fn run_web_client(
let mut flags = global_ctx.get_flags(); let mut flags = global_ctx.get_flags();
flags.bind_device = false; flags.bind_device = false;
global_ctx.set_flags(flags); global_ctx.set_flags(flags);
let hostname = hostname.unwrap_or_else(|| hostname::get().unwrap_or_default().to_string_lossy().into_owned()); let hostname = hostname.unwrap_or_else(|| {
hostname::get()
.unwrap_or_default()
.to_string_lossy()
.into_owned()
});
Ok(WebClient::new( Ok(WebClient::new(
create_connector_by_url(c_url.as_str(), &global_ctx, IpVersion::Both).await?, create_connector_by_url(c_url.as_str(), &global_ctx, IpVersion::Both).await?,
token.to_string(), token.to_string(),