- Replace synchronous std::net::UdpSocket with tokio async runtime - Spawn concurrent task per incoming DNS query via tokio::spawn - Extract monolithic main.rs into modules: buffer, header, question, record, packet, config, cache, forward, stats - Share state across tasks via Arc<ServerCtx> with scoped Mutex locks - Add TOML config loading, TTL-aware cache, structured logging, stats - Add CLAUDE.md, README, dns_fun.toml config, and design docs Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
15 lines
402 B
TOML
15 lines
402 B
TOML
[package]
|
|
name = "dns_fun"
|
|
version = "0.1.0"
|
|
authors = ["razvandimescu <razvan@dimescu.com>"]
|
|
edition = "2018"
|
|
|
|
# See more keys and their definitions at https://doc.rust-lang.org/cargo/reference/manifest.html
|
|
|
|
[dependencies]
|
|
tokio = { version = "1", features = ["rt-multi-thread", "macros", "net", "time"] }
|
|
toml = "0.8"
|
|
serde = { version = "1", features = ["derive"] }
|
|
log = "0.4"
|
|
env_logger = "0.11"
|