Struct hickory_proto::op::Edns
source · pub struct Edns { /* private fields */ }
Expand description
Edns implements the higher level concepts for working with extended dns as it is used to create or be created from OPT record data.
Implementations§
source§impl Edns
impl Edns
sourcepub fn rcode_high(&self) -> u8
pub fn rcode_high(&self) -> u8
The high order bytes for the response code in the DNS Message
sourcepub fn z_flags(&self) -> u16
pub fn z_flags(&self) -> u16
Returns the Z flags. Should be ignored by receivers. Only the low 15 bits are significant. The high bit is always returned as zero.
sourcepub fn max_payload(&self) -> u16
pub fn max_payload(&self) -> u16
Maximum supported size of the DNS payload
sourcepub fn option(&self, code: EdnsCode) -> Option<&EdnsOption>
pub fn option(&self, code: EdnsCode) -> Option<&EdnsOption>
Returns the Option associated with the code
sourcepub fn options_mut(&mut self) -> &mut OPT
pub fn options_mut(&mut self) -> &mut OPT
Returns a mutable options portion of EDNS
sourcepub fn set_rcode_high(&mut self, rcode_high: u8) -> &mut Self
pub fn set_rcode_high(&mut self, rcode_high: u8) -> &mut Self
Set the high order bits for the result code.
sourcepub fn set_version(&mut self, version: u8) -> &mut Self
pub fn set_version(&mut self, version: u8) -> &mut Self
Set the EDNS version
sourcepub fn set_dnssec_ok(&mut self, dnssec_ok: bool) -> &mut Self
pub fn set_dnssec_ok(&mut self, dnssec_ok: bool) -> &mut Self
Set to true if DNSSEC is supported
sourcepub fn set_z_flags(&mut self, z: u16) -> &mut Self
pub fn set_z_flags(&mut self, z: u16) -> &mut Self
Set the Z flags. Should be set to zero by senders. Only the low 15 bits are significant. The high bit is ignored.
sourcepub fn set_max_payload(&mut self, max_payload: u16) -> &mut Self
pub fn set_max_payload(&mut self, max_payload: u16) -> &mut Self
Set the maximum payload which can be supported
From RFC 6891: Values lower than 512 MUST be treated as equal to 512
sourcepub fn set_option(&mut self, option: EdnsOption)
👎Deprecated: Please use options_mut().insert() to modify
pub fn set_option(&mut self, option: EdnsOption)
Set the specified EDNS option
Trait Implementations§
source§impl BinEncodable for Edns
impl BinEncodable for Edns
source§fn emit(&self, encoder: &mut BinEncoder<'_>) -> ProtoResult<()>
fn emit(&self, encoder: &mut BinEncoder<'_>) -> ProtoResult<()>
impl Eq for Edns
impl StructuralPartialEq for Edns
Auto Trait Implementations§
impl Freeze for Edns
impl RefUnwindSafe for Edns
impl Send for Edns
impl Sync for Edns
impl Unpin for Edns
impl UnwindSafe for Edns
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§default unsafe fn clone_to_uninit(&self, dst: *mut T)
default unsafe fn clone_to_uninit(&self, dst: *mut T)
clone_to_uninit
)source§impl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
source§impl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
source§fn equivalent(&self, key: &K) -> bool
fn equivalent(&self, key: &K) -> bool
key
and return true
if they are equal.