dns-message-parser 0.9.0

Libary to encode and decode DNS packets
Documentation
use crate::encode::Encoder;
use crate::rr::{Tag, Type, CAA};
use crate::EncodeResult;

impl Encoder {
    fn rr_caa_tag(&mut self, tag: &Tag) -> EncodeResult<()> {
        self.string_with_len(tag.as_ref())
    }

    pub(super) fn rr_caa(&mut self, caa: &CAA) -> EncodeResult<()> {
        self.domain_name(&caa.domain_name)?;
        self.rr_type(&Type::CAA);
        self.rr_class(&caa.class);
        self.u32(caa.ttl);
        let length_index = self.create_length_index();
        self.u8(caa.flags);
        self.rr_caa_tag(&caa.tag)?;
        self.vec(&caa.value);
        self.set_length_index(length_index)
    }
}