Skip to content
Draft
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
40 commits
Select commit Hold shift + click to select a range
56afc26
refactor(iroh): use hickory-proto directly
dignifiedquire Mar 13, 2026
546b281
feat: minimal dns resolver using simple-dns
dignifiedquire Mar 13, 2026
d6fa8b3
refactor(iroh): use simple-dns in test-utils
dignifiedquire Mar 13, 2026
f6c6c09
add timouts
dignifiedquire Mar 16, 2026
d37c1b9
cleanup
dignifiedquire Mar 23, 2026
599edc6
fixups
dignifiedquire Mar 23, 2026
f9fd0d1
fix(dns): follow CNAME chains in DNS response parsing
Frando Apr 14, 2026
0b885d5
fix(dns): add EDNS(0) OPT record to DNS queries
Frando Apr 14, 2026
733360f
fix(dns): parallel nameserver queries with UDP retries
Frando Apr 14, 2026
fcdbaea
fix(dns): validate UDP response source address
Frando Apr 14, 2026
177b5fb
docs(dns): document DoT/DoH IP-only addressing limitation
Frando Apr 14, 2026
33ab42a
fix(dns): restore bytes representation for TxtRecordData
Frando Apr 14, 2026
fb25b72
fix(dns): preserve raw TXT record content without key=value parsing
Frando Apr 14, 2026
26aef60
fix(dns): parse search/domain directives from resolv.conf
Frando Apr 14, 2026
940c853
fix(dns): support custom ports in resolv.conf nameserver entries
Frando Apr 14, 2026
b28893c
fix(dns): distinguish NXDOMAIN from other server errors
Frando Apr 14, 2026
4be24ea
fix(dns): use HashSet for Windows DNS server deduplication
Frando Apr 14, 2026
4b0258c
docs(dns): document known limitations for caching and connection reuse
Frando Apr 14, 2026
b5be24c
chore(dns): suppress dead_code warning for search_domains field
Frando Apr 14, 2026
d82aa90
feat(dns): apply search domain expansion to DNS queries
Frando Apr 14, 2026
f2a2860
refactor(dns): readability and ergonomic improvements
Frando Apr 14, 2026
04ea998
refactor(dns): simplify error handling with ? propagation
Frando Apr 14, 2026
a861ab2
perf(dns): avoid unnecessary String clones in query path
Frando Apr 14, 2026
5bdd79a
perf(dns): eliminate String allocation on cache lookups
Frando Apr 14, 2026
c92de6a
fix(dns): address CI failures (fmt, clippy, semver, no-crypto build)
Frando Apr 14, 2026
46012cb
refactor: move Mutex into DnsCache
Frando Apr 14, 2026
e8ad0c1
refactor(dns): move Mutex into DnsCache, extract shared lookup method
Frando Apr 14, 2026
1ae3818
chore: fmt and cleanups
Frando Apr 15, 2026
f4f35fc
more cleanups
Frando Apr 15, 2026
518a44a
Merge remote-tracking branch 'origin/main' into Frando/refactor-hicko…
Frando Apr 15, 2026
fed897b
fix iroh-bench feature flags
Frando Apr 15, 2026
da45616
fix(dns): harden response validation, truncation check, and cache TTL
Frando Apr 15, 2026
ee30dae
fix(dns): parse ndots from resolv.conf, wire through resolver
Frando Apr 15, 2026
61cb0d5
fix(dns): continue search domain iteration on SERVFAIL
Frando Apr 15, 2026
de1c250
fix(dns): read search domains from Windows registry
Frando Apr 15, 2026
9bbb504
docs(dns): clarify cache key collision semantics
Frando Apr 15, 2026
3e1f1e1
refactor(dns): extract shared parse_response helper for A/AAAA/TXT
Frando Apr 15, 2026
c741d50
fix features
Frando Apr 15, 2026
a524343
fix(dns): special-case localhost per RFC 6761, fix error message casing
Frando Apr 15, 2026
138d2b9
fix(dns): improve logging and fix NXDOMAIN search domain retry
Frando Apr 15, 2026
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
122 changes: 8 additions & 114 deletions Cargo.lock

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

9 changes: 6 additions & 3 deletions iroh-relay/Cargo.toml
Original file line number Diff line number Diff line change
Expand Up @@ -88,7 +88,7 @@ tracing-subscriber = { version = "0.3", features = ["env-filter"], optional = tr

# non-wasm-in-browser dependencies
[target.'cfg(not(all(target_family = "wasm", target_os = "unknown")))'.dependencies]
hickory-resolver = { version = "=0.26.0-beta.1", features = ["tokio", "system-config"] }
simple-dns = "0.9.3"
tokio = { version = "1", features = [
"io-util",
"macros",
Expand All @@ -100,6 +100,10 @@ tokio = { version = "1", features = [
] }
tokio-websockets = { version = "0.13", features = ["rustls-bring-your-own-connector", "getrandom", "rand", "client", "sha1_smol"] }

# Windows-only dependencies
[target.'cfg(windows)'.dependencies]
ipconfig = "0.3"

# wasm-in-browser dependencies
[target.'cfg(all(target_family = "wasm", target_os = "unknown"))'.dependencies]
ws_stream_wasm = { version = "0.7.4", default-features = false }
Expand Down Expand Up @@ -134,6 +138,7 @@ platform-verifier = ["dep:rustls-platform-verifier"]
server = [
"metrics",
"tokio/signal",
"tokio/rt-multi-thread",
"dep:clap",
"dep:dashmap",
"dep:ahash",
Expand Down Expand Up @@ -161,14 +166,12 @@ tls-ring = [
"rustls/ring",
"tokio-rustls/ring",
"tokio-websockets/ring",
"hickory-resolver/https-ring",
]
tls-aws-lc-rs = [
"noq/aws-lc-rs",
"rustls/aws-lc-rs",
"tokio-rustls/aws-lc-rs",
"tokio-websockets/aws_lc_rs",
"hickory-resolver/https-aws-lc-rs",
]

[[bin]]
Expand Down
Loading
Loading