mirror of
https://github.com/shadowsocks/shadowsocks-rust.git
synced 2026-02-09 01:59:16 +08:00
4
Cargo.lock
generated
4
Cargo.lock
generated
@@ -2083,7 +2083,7 @@ dependencies = [
|
||||
|
||||
[[package]]
|
||||
name = "shadowsocks-rust"
|
||||
version = "1.13.4"
|
||||
version = "1.13.5"
|
||||
dependencies = [
|
||||
"build-time",
|
||||
"byte_string",
|
||||
@@ -2115,7 +2115,7 @@ dependencies = [
|
||||
|
||||
[[package]]
|
||||
name = "shadowsocks-service"
|
||||
version = "1.13.4"
|
||||
version = "1.13.5"
|
||||
dependencies = [
|
||||
"arc-swap 1.5.0",
|
||||
"async-trait",
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
[package]
|
||||
name = "shadowsocks-rust"
|
||||
version = "1.13.4"
|
||||
version = "1.13.5"
|
||||
authors = ["Shadowsocks Contributors"]
|
||||
description = "shadowsocks is a fast tunnel proxy that helps you bypass firewalls."
|
||||
repository = "https://github.com/shadowsocks/shadowsocks-rust"
|
||||
@@ -164,7 +164,7 @@ jemallocator = { version = "0.3", optional = true }
|
||||
snmalloc-rs = { version = "0.2", optional = true }
|
||||
rpmalloc = { version = "0.2", optional = true }
|
||||
|
||||
shadowsocks-service = { version = "1.13.4", path = "./crates/shadowsocks-service" }
|
||||
shadowsocks-service = { version = "1.13.5", path = "./crates/shadowsocks-service" }
|
||||
|
||||
[target.'cfg(unix)'.dependencies]
|
||||
daemonize = "0.4"
|
||||
|
||||
@@ -662,6 +662,7 @@ Example configuration:
|
||||
### Environment Variables
|
||||
|
||||
- `SS_SERVER_PASSWORD`: A default password for servers that created from command line argument (`--server-addr`)
|
||||
- `SS_SYSTEM_DNS_RESOLVER_FORCE_BUILTIN`: `"system"` DNS resolver force use system's builtin (`getaddrinfo` in *NIX)
|
||||
|
||||
## Supported Ciphers
|
||||
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
[package]
|
||||
name = "shadowsocks-service"
|
||||
version = "1.13.4"
|
||||
version = "1.13.5"
|
||||
authors = ["Shadowsocks Contributors"]
|
||||
description = "shadowsocks is a fast tunnel proxy that helps you bypass firewalls."
|
||||
repository = "https://github.com/shadowsocks/shadowsocks-rust"
|
||||
|
||||
@@ -1,5 +1,6 @@
|
||||
//! DNS resolvers
|
||||
|
||||
use log::trace;
|
||||
use shadowsocks::{dns_resolver::DnsResolver, net::ConnectOpts};
|
||||
|
||||
use crate::config::DnsConfig;
|
||||
@@ -11,19 +12,32 @@ pub async fn build_dns_resolver(dns: DnsConfig, ipv6_first: bool, connect_opts:
|
||||
#[cfg(feature = "trust-dns")]
|
||||
if crate::hint_support_default_system_resolver() {
|
||||
use log::warn;
|
||||
use std::env;
|
||||
|
||||
return match DnsResolver::trust_dns_system_resolver(ipv6_first).await {
|
||||
Ok(r) => Some(r),
|
||||
Err(err) => {
|
||||
warn!(
|
||||
let force_system_builtin = match env::var("SS_SYSTEM_DNS_RESOLVER_FORCE_BUILTIN") {
|
||||
Ok(mut v) => {
|
||||
v.make_ascii_lowercase();
|
||||
v == "1" || v == "true"
|
||||
}
|
||||
Err(..) => false,
|
||||
};
|
||||
|
||||
if !force_system_builtin {
|
||||
return match DnsResolver::trust_dns_system_resolver(ipv6_first).await {
|
||||
Ok(r) => Some(r),
|
||||
Err(err) => {
|
||||
warn!(
|
||||
"initialize trust-dns DNS system resolver failed, fallback to default system resolver, error: {}",
|
||||
err
|
||||
);
|
||||
None
|
||||
}
|
||||
};
|
||||
None
|
||||
}
|
||||
};
|
||||
}
|
||||
}
|
||||
|
||||
trace!("initialized DNS system resolver builtin");
|
||||
|
||||
None
|
||||
}
|
||||
#[cfg(feature = "trust-dns")]
|
||||
@@ -42,7 +56,6 @@ pub async fn build_dns_resolver(dns: DnsConfig, ipv6_first: bool, connect_opts:
|
||||
#[cfg(feature = "local-dns")]
|
||||
DnsConfig::LocalDns(ns) => {
|
||||
use crate::local::dns::dns_resolver::DnsResolver as LocalDnsResolver;
|
||||
use log::trace;
|
||||
use shadowsocks::config::Mode;
|
||||
|
||||
trace!("initializing direct DNS resolver for {}", ns);
|
||||
|
||||
@@ -82,7 +82,7 @@ fn hint_support_default_system_resolver() -> bool {
|
||||
cfg!(all(
|
||||
unix,
|
||||
not(target_os = "android"),
|
||||
/* not(target_os = "macos"),
|
||||
* not(target_os = "ios") */
|
||||
// not(target_os = "macos"),
|
||||
// not(target_os = "ios")
|
||||
))
|
||||
}
|
||||
|
||||
6
debian/changelog
vendored
6
debian/changelog
vendored
@@ -1,3 +1,9 @@
|
||||
shadowsocks-rust (1.13.5) unstable; urgency=medium
|
||||
|
||||
## Features
|
||||
|
||||
- #773 Set environment variable `SS_SYSTEM_DNS_RESOLVER_FORCE_BUILTIN` to use system's builtin DNS resolver
|
||||
|
||||
shadowsocks-rust (1.13.4) unstable; urgency=medium
|
||||
|
||||
## Features
|
||||
|
||||
Reference in New Issue
Block a user