server::respond
is the central authoritative pipeline. Its shape is intentionally
linear:
FORMERR.Zone for a typed Lookup.The code separates mechanism from policy. transport.rs
knows UDP datagrams, TCP length prefixes, timeouts, persistent
connections, and a fixed worker bound. It knows nothing about zones. The
handler knows DNS policy but receives transport limits and client
identity as ordinary parameters. That separation lets specialized
services reuse the network machinery without pretending to be
authoritative zones.
The original djbdns family achieved robustness partly through small
processes. rgbdns retains that decomposition while strengthening
in-process boundaries. The binaries under src/bin
are mostly adapters: environment, configuration, a library call, and the
djbdns-compatible fatal exit convention. Small executables remain
independently supervisable, but common logic is testable as ordinary
Rust functions.