use bytes::{Bytes, Buf}; use std::io::Cursor; use ser::DnsPacketData; use errors::*; #[derive(Clone, Debug)] pub struct ShortText(Bytes); // RFC 1035 names this `` impl DnsPacketData for ShortText { fn deserialize(data: &mut Cursor) -> Result { check_enough_data!(data, 1, "ShortText length"); let label_len = data.get_u8() as usize; check_enough_data!(data, label_len, "ShortText content"); let pos = data.position() as usize; let text = data.get_ref().slice(pos, pos + label_len); data.advance(label_len); Ok(ShortText(text)) } }