pub struct VerifiedRRStream<'a> {
pub verified_rrs: Vec<&'a RR>,
pub valid_from: u64,
pub expires: u64,
pub max_cache_ttl: u32,
}Expand description
Given a set of RRs, verify_rr_stream checks what it can and returns the set of
non-RRSig/DnsKey/DS records which it was able to verify using this struct.
It also contains signing and expiry times, which must be validated before considering the contained records verified.
Fields§
§verified_rrs: Vec<&'a RR>The set of verified RRs, not including DnsKey, RRSig, NSec, and NSec3
records.
These are not valid unless the current UNIX time is between Self::valid_from and
Self::expires.
valid_from: u64The latest RRSig::inception of all the RRSigs validated to verify
Self::verified_rrs.
Any records in Self::verified_rrs should not be considered valid unless this is before
the current UNIX time.
While the field here is a u64, the algorithm used to identify rollovers will fail in 2133.
expires: u64The earliest RRSig::expiration of all the RRSigs validated to verify
Self::verified_rrs.
Any records in Self::verified_rrs should not be considered valid unless this is after
the current UNIX time.
While the field here is a u64, the algorithm used to identify rollovers will fail in 2133.
max_cache_ttl: u32The minimum RRSig::orig_ttl of all the RRSigs validated to verify
Self::verified_rrs.
Any caching of Self::verified_rrs must not last longer than this value, in seconds.
Implementations§
Source§impl<'a> VerifiedRRStream<'a>
impl<'a> VerifiedRRStream<'a>
Sourcepub fn resolve_name<'b>(&self, name_param: &'b Name) -> Vec<&'a RR>where
'a: 'b,
pub fn resolve_name<'b>(&self, name_param: &'b Name) -> Vec<&'a RR>where
'a: 'b,
Given a name, resolve any CName records and return any verified records which were
pointed to by the original name.
Note that because of CNames, the RR::name in the returned records may or may not be
equal to name.
You MUST still check that the current UNIX time is between
VerifiedRRStream::valid_from and VerifiedRRStream::expires before
using any records returned here.
Trait Implementations§
Source§impl<'a> Clone for VerifiedRRStream<'a>
impl<'a> Clone for VerifiedRRStream<'a>
Source§fn clone(&self) -> VerifiedRRStream<'a>
fn clone(&self) -> VerifiedRRStream<'a>
1.0.0 (const: unstable) · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source. Read more