Browse Source

update dependencies

pull/61/head
ssrlive 3 years ago
parent
commit
d04344238a
  1. 10
      Cargo.toml
  2. 8
      src/dns.rs
  3. 2
      src/tun2proxy.rs

10
Cargo.toml

@ -11,22 +11,22 @@ crate-type = ["cdylib", "lib"]
base64 = { version = "0.21" } base64 = { version = "0.21" }
clap = { version = "4.3", features = ["derive"] } clap = { version = "4.3", features = ["derive"] }
ctrlc = "3.4" ctrlc = "3.4"
digest_auth = "0.3.1" digest_auth = "0.3"
dotenvy = "0.15" dotenvy = "0.15"
env_logger = "0.10" env_logger = "0.10"
fork = "0.1" fork = "0.1"
hashlink = "0.8" hashlink = "0.8"
httparse = "1.8.0" httparse = "1.8"
libc = "0.2" libc = "0.2"
log = "0.4" log = "0.4"
mio = { version = "0.8", features = ["os-poll", "net", "os-ext"] } mio = { version = "0.8", features = ["os-poll", "net", "os-ext"] }
nix = { version = "0.26", features = ["process", "signal"] } nix = { version = "0.26", features = ["process", "signal"] }
prctl = "1.0" prctl = "1.0"
smoltcp = { version = "0.10.0", features = ["std", "phy-tuntap_interface"] } smoltcp = { version = "0.10", features = ["std", "phy-tuntap_interface"] }
socks5-impl = { version = "0.5", default-features = false } socks5-impl = { version = "0.5", default-features = false }
thiserror = "1.0" thiserror = "1.0"
trust-dns-proto = "0.22" trust-dns-proto = "0.23"
unicase = "2.6.0" unicase = "2.7"
url = "2.4" url = "2.4"
[target.'cfg(target_os="android")'.dependencies] [target.'cfg(target_os="android")'.dependencies]

8
src/dns.rs

@ -37,12 +37,12 @@ pub fn build_dns_response(mut request: Message, domain: &str, ip: IpAddr, ttl: u
let record = match ip { let record = match ip {
IpAddr::V4(ip) => { IpAddr::V4(ip) => {
let mut record = Record::with(Name::from_str(domain)?, RecordType::A, ttl); let mut record = Record::with(Name::from_str(domain)?, RecordType::A, ttl);
record.set_data(Some(RData::A(ip))); record.set_data(Some(RData::A(ip.into())));
record record
} }
IpAddr::V6(ip) => { IpAddr::V6(ip) => {
let mut record = Record::with(Name::from_str(domain)?, RecordType::AAAA, ttl); let mut record = Record::with(Name::from_str(domain)?, RecordType::AAAA, ttl);
record.set_data(Some(RData::AAAA(ip))); record.set_data(Some(RData::AAAA(ip.into())));
record record
} }
}; };
@ -64,10 +64,10 @@ pub fn extract_ipaddr_from_dns_message(message: &Message) -> Result<IpAddr, Stri
for answer in message.answers() { for answer in message.answers() {
match answer.data().ok_or("DNS response not contains answer data")? { match answer.data().ok_or("DNS response not contains answer data")? {
RData::A(addr) => { RData::A(addr) => {
return Ok(IpAddr::V4(*addr)); return Ok(IpAddr::V4((*addr).into()));
} }
RData::AAAA(addr) => { RData::AAAA(addr) => {
return Ok(IpAddr::V6(*addr)); return Ok(IpAddr::V6((*addr).into()));
} }
RData::CNAME(name) => { RData::CNAME(name) => {
cname = Some(name.to_utf8()); cname = Some(name.to_utf8());

2
src/tun2proxy.rs

@ -570,7 +570,7 @@ impl<'a> TunToProxy<'a> {
let name = dns::extract_domain_from_dns_message(&message)?; let name = dns::extract_domain_from_dns_message(&message)?;
let ip = dns::extract_ipaddr_from_dns_message(&message); let ip = dns::extract_ipaddr_from_dns_message(&message);
log::info!("DNS over TCP query result: {} -> {:?}", name, ip); log::trace!("DNS over TCP query result: {} -> {:?}", name, ip);
state state
.tcp_proxy_handler .tcp_proxy_handler

Loading…
Cancel
Save