[−][src]Struct toluol::DnsHeader
Represents a DNS header.
rcode
is an Option<DnsRcode>
because valid DNS queries do not have a RCODE.
See here for
a list of available flags and their respective defining RFCs. The general format of a header is
defined in RFC 1035.
Implementations
impl DnsHeader
[src]
pub fn new_response_header(
msg_id: u16,
opcode: DnsOpcode,
aa: bool,
tc: bool,
rd: bool,
ra: bool,
ad: bool,
cd: bool,
rcode: DnsRcode,
qdcount: u16,
ancount: u16,
nscount: u16,
arcount: u16
) -> DnsHeader
[src]
msg_id: u16,
opcode: DnsOpcode,
aa: bool,
tc: bool,
rd: bool,
ra: bool,
ad: bool,
cd: bool,
rcode: DnsRcode,
qdcount: u16,
ancount: u16,
nscount: u16,
arcount: u16
) -> DnsHeader
Creates a header for a DNS response message. See RFC 1035 and here for information about the parameters.
pub fn new_query_header(
msg_id: u16,
opcode: DnsOpcode,
tc: bool,
rd: bool,
ad: bool,
cd: bool,
edns: bool,
qdcount: u16
) -> DnsHeader
[src]
msg_id: u16,
opcode: DnsOpcode,
tc: bool,
rd: bool,
ad: bool,
cd: bool,
edns: bool,
qdcount: u16
) -> DnsHeader
Creates a header for a DNS query message.
If the query includes an OPT record, edns
must be true
. See
RFC 1035 and
here for
information about the other parameters.
pub fn encode(&self) -> Result<Vec<u8>>
[src]
Encodes a DnsHeader as a series of bytes.
Returns an error if a method defined in byteorder::WriteBytesExt
returns an error.
pub fn parse(header: &mut Cursor<&[u8]>) -> Result<DnsHeader>
[src]
Parses an encoded DnsHeader from a series of bytes.
Returns an error if DnsOpcode::parse()
, DnsRcode::parse()
or a method defined in
byteorder::ReadBytesExt
return an error.
pub fn info_str(&self) -> String
[src]
Creates a string containing information (id, opcode, rcode if applicable, flags) about the header.
Trait Implementations
Auto Trait Implementations
impl RefUnwindSafe for DnsHeader
impl Send for DnsHeader
impl Sync for DnsHeader
impl Unpin for DnsHeader
impl UnwindSafe for DnsHeader
Blanket Implementations
impl<T> Any for T where
T: 'static + ?Sized,
[src]
T: 'static + ?Sized,
impl<T> Borrow<T> for T where
T: ?Sized,
[src]
T: ?Sized,
impl<T> BorrowMut<T> for T where
T: ?Sized,
[src]
T: ?Sized,
pub fn borrow_mut(&mut self) -> &mut T
[src]
impl<T> From<T> for T
[src]
impl<T, U> Into<U> for T where
U: From<T>,
[src]
U: From<T>,
impl<T> ToString for T where
T: Display + ?Sized,
[src]
T: Display + ?Sized,
impl<T, U> TryFrom<U> for T where
U: Into<T>,
[src]
U: Into<T>,
type Error = Infallible
The type returned in the event of a conversion error.
pub fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>
[src]
impl<T, U> TryInto<U> for T where
U: TryFrom<T>,
[src]
U: TryFrom<T>,
type Error = <U as TryFrom<T>>::Error
The type returned in the event of a conversion error.
pub fn try_into(self) -> Result<U, <U as TryFrom<T>>::Error>
[src]
impl<V, T> VZip<V> for T where
V: MultiLane<T>,
V: MultiLane<T>,