pub struct NSec3 {
pub name: Name,
pub hash_algo: u8,
pub flags: u8,
pub hash_iterations: u16,
pub salt: Vec<u8>,
pub next_name_hash: Vec<u8>,
pub types: NSecTypeMask,
}Expand description
A Next Secure Record resource record. This indicates a range of possible names for which there is no such record.
Fields§
§name: NameThe name this record is at.
hash_algo: u8The hash algorithm used to hash the name and Self::next_name_hash. Currently only 1
(SHA-1) is defined.
flags: u8Flags for this record. Currently only bit 0 (the “opt-out” bit) is defined.
hash_iterations: u16The number of hash iterations required.
As of RFC 9276 this MUST be set to 0, but sadly is often still set higher in the wild. A hard cap is applied in validation.
salt: Vec<u8>The salt included in the hash.
As of RFC 9276 this SHOULD be empty, but often isn’t in the wild.
next_name_hash: Vec<u8>The hash of the next name which contains a record. There are no records who’s name’s hash
lies between name and Self::next_name_hash.
types: NSecTypeMaskThe set of record types which exist at name. Any other record types do not exist at
name.
Trait Implementations§
Source§impl Ord for NSec3
impl Ord for NSec3
Source§impl PartialOrd for NSec3
impl PartialOrd for NSec3
impl Eq for NSec3
impl StructuralPartialEq for NSec3
Auto Trait Implementations§
impl Freeze for NSec3
impl RefUnwindSafe for NSec3
impl Send for NSec3
impl Sync for NSec3
impl Unpin for NSec3
impl UnwindSafe for NSec3
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
Source§impl<RR> Record for RRwhere
RR: StaticRecord,
impl<RR> Record for RRwhere
RR: StaticRecord,
Source§fn write_u16_len_prefixed_data(&self, out: &mut Vec<u8>)
fn write_u16_len_prefixed_data(&self, out: &mut Vec<u8>)
Vec.