Module simple_dns::header_buffer
source · Expand description
Helper functions to assert a buffer for the header flags of a DNS Packet. Useful for checking the header
without parsing the whole packet.
WARNING: Flags and RCODE information may be incomplete if the packet contains EDNS (OPT) or
DNSSEC Resource Records
use simple_dns::{header_buffer, PacketFlag};
let buffer = b"\xff\xff\x03\x00\x00\x02\x00\x02\x00\x02\x00\x02";
assert_eq!(u16::MAX, header_buffer::id(&buffer[..]).unwrap());
assert!(!header_buffer::has_flags(&buffer[..], PacketFlag::RESPONSE).unwrap());
Functions
- Returns the additional records from the header buffer
- Returns the answers count from the header buffer
- Verify if buffer has the flags set.
WARNING: This information may be wrong if there is an OPT record in packet - Returns the packet id from the header buffer
- Returns the name servers count from the header buffer
- Get the OPCODE from the buffer
- Returns the questions count from the header buffer
- Get the RCODE from the buffer.
WARNING: This information may be wrong if there is an OPT record in packet