Files
Easytier/easytier/src/proto/dns.rs
T
2026-04-06 11:54:01 +02:00

36 lines
912 B
Rust

use std::fmt::Display;
include!(concat!(env!("OUT_DIR"), "/dns.rs"));
impl Display for ZoneData {
fn fmt(&self, f: &mut std::fmt::Formatter<'_>) -> std::fmt::Result {
writeln!(f, "; EasyTier Magic DNS zone data")?;
writeln!(f, "; https://github.com/easytier/easytier")?;
writeln!(f, "; {}", self.id.unwrap_or_default())?;
if !self.forwarders.is_empty() {
writeln!(f, "; Forwarders:")?;
for forwarder in &self.forwarders {
writeln!(f, "; \t{}", forwarder)?;
}
}
writeln!(f)?;
write!(f, "$ORIGIN {}", self.origin)?;
if !self.origin.ends_with('.') {
write!(f, ".")?;
}
writeln!(f)?;
writeln!(f, "$TTL {}", self.ttl)?;
writeln!(f)?;
for record in &self.records {
writeln!(f, "{}", record)?;
}
Ok(())
}
}