Add function to set referral via other nameserver
* fix clippy lints
This commit is contained in:
parent
96b3b6650d
commit
0bcf749617
@ -32,11 +32,7 @@ fn main() -> Result<()> {
|
|||||||
nameservers_ns.start()?
|
nameservers_ns.start()?
|
||||||
};
|
};
|
||||||
|
|
||||||
com_ns.referral(
|
com_ns.referral_nameserver(&nameservers_ns);
|
||||||
nameservers_ns.zone().clone(),
|
|
||||||
nameservers_ns.fqdn().clone(),
|
|
||||||
nameservers_ns.ipv4_addr(),
|
|
||||||
);
|
|
||||||
|
|
||||||
let com_ns = if args.dnssec {
|
let com_ns = if args.dnssec {
|
||||||
let com_ns = com_ns.sign()?;
|
let com_ns = com_ns.sign()?;
|
||||||
@ -46,7 +42,7 @@ fn main() -> Result<()> {
|
|||||||
com_ns.start()?
|
com_ns.start()?
|
||||||
};
|
};
|
||||||
|
|
||||||
root_ns.referral(FQDN::COM, com_ns.fqdn().clone(), com_ns.ipv4_addr());
|
root_ns.referral_nameserver(&com_ns);
|
||||||
|
|
||||||
let mut trust_anchor = TrustAnchor::empty();
|
let mut trust_anchor = TrustAnchor::empty();
|
||||||
let root_ns = if args.dnssec {
|
let root_ns = if args.dnssec {
|
||||||
|
@ -71,11 +71,7 @@ impl Graph {
|
|||||||
unreachable!()
|
unreachable!()
|
||||||
};
|
};
|
||||||
|
|
||||||
parent.referral(
|
parent.referral_nameserver(child);
|
||||||
child.zone().clone(),
|
|
||||||
child.fqdn().clone(),
|
|
||||||
child.ipv4_addr(),
|
|
||||||
);
|
|
||||||
}
|
}
|
||||||
|
|
||||||
let root = nameservers.last().unwrap();
|
let root = nameservers.last().unwrap();
|
||||||
@ -188,6 +184,15 @@ impl NameServer<Stopped> {
|
|||||||
self
|
self
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/// Adds a NS + A record pair to the zone file from another NameServer
|
||||||
|
pub fn referral_nameserver<T>(&mut self, nameserver: &NameServer<T>) -> &mut Self {
|
||||||
|
self.referral(
|
||||||
|
nameserver.zone().clone(),
|
||||||
|
nameserver.fqdn().clone(),
|
||||||
|
nameserver.ipv4_addr(),
|
||||||
|
)
|
||||||
|
}
|
||||||
|
|
||||||
/// Adds a record to the name server's zone file
|
/// Adds a record to the name server's zone file
|
||||||
pub fn add(&mut self, record: impl Into<Record>) -> &mut Self {
|
pub fn add(&mut self, record: impl Into<Record>) -> &mut Self {
|
||||||
self.zone_file.add(record);
|
self.zone_file.add(record);
|
||||||
|
@ -316,14 +316,10 @@ mod tests {
|
|||||||
nameservers_ns.add(root_ns.a()).add(com_ns.a());
|
nameservers_ns.add(root_ns.a()).add(com_ns.a());
|
||||||
let nameservers_ns = nameservers_ns.start()?;
|
let nameservers_ns = nameservers_ns.start()?;
|
||||||
|
|
||||||
com_ns.referral(
|
com_ns.referral_nameserver(&nameservers_ns);
|
||||||
nameservers_ns.zone().clone(),
|
|
||||||
nameservers_ns.fqdn().clone(),
|
|
||||||
nameservers_ns.ipv4_addr(),
|
|
||||||
);
|
|
||||||
let com_ns = com_ns.start()?;
|
let com_ns = com_ns.start()?;
|
||||||
|
|
||||||
root_ns.referral(FQDN::COM, com_ns.fqdn().clone(), com_ns.ipv4_addr());
|
root_ns.referral_nameserver(&com_ns);
|
||||||
let root_ns = root_ns.start()?;
|
let root_ns = root_ns.start()?;
|
||||||
|
|
||||||
let resolver = Resolver::new(
|
let resolver = Resolver::new(
|
||||||
|
Loading…
Reference in New Issue
Block a user