1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29
use crate::encode::Encoder; use crate::rr::{SSHFPAlgorithm, SSHFPType, Type, SSHFP}; use crate::EncodeResult; impl Encoder { #[inline] fn rr_sshfp_algorithm(&mut self, algorihtm: &SSHFPAlgorithm) { self.u8(algorihtm.clone() as u8); } #[inline] fn rr_sshfp_type(&mut self, type_: &SSHFPType) { self.u8(type_.clone() as u8); } pub(super) fn rr_sshfp(&mut self, ssh_fp: &SSHFP) -> EncodeResult<()> { self.domain_name(&ssh_fp.domain_name)?; self.rr_type(&Type::SSHFP); self.rr_class(&ssh_fp.class); self.u32(ssh_fp.ttl); let length_index = self.create_length_index(); self.rr_sshfp_algorithm(&ssh_fp.algorithm); self.rr_sshfp_type(&ssh_fp.type_); self.vec(&ssh_fp.fp); self.set_length_index(length_index) } } impl_encode_rr!(SSHFP, rr_sshfp);