dns_message_parser/decode/rr/
rfc_3596.rs1use super::Header;
2use crate::decode::Decoder;
3use crate::rr::{Class, AAAA};
4use crate::{DecodeError, DecodeResult};
5
6impl<'a, 'b: 'a> Decoder<'a, 'b> {
7 pub(super) fn rr_aaaa(&mut self, header: Header) -> DecodeResult<AAAA> {
8 match header.get_class()? {
9 Class::IN => {
10 let ipv6_addr = self.ipv6_addr()?;
11 let aaaa = AAAA {
12 domain_name: header.domain_name,
13 ttl: header.ttl,
14 ipv6_addr,
15 };
16 Ok(aaaa)
17 }
18 class => Err(DecodeError::AAAAClass(class)),
19 }
20 }
21}