pub struct DnsProtocol;Expand description
DNS protocol parser.
Trait Implementations§
Source§impl Clone for DnsProtocol
impl Clone for DnsProtocol
Source§fn clone(&self) -> DnsProtocol
fn clone(&self) -> DnsProtocol
Returns a duplicate of the value. Read more
1.0.0 · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
Performs copy-assignment from
source. Read moreSource§impl Debug for DnsProtocol
impl Debug for DnsProtocol
Source§impl From<DnsProtocol> for BuiltinProtocol
impl From<DnsProtocol> for BuiltinProtocol
Source§fn from(p: DnsProtocol) -> Self
fn from(p: DnsProtocol) -> Self
Converts to this type from the input type.
Source§impl Protocol for DnsProtocol
impl Protocol for DnsProtocol
Source§fn display_name(&self) -> &'static str
fn display_name(&self) -> &'static str
Human-readable display name.
Source§fn can_parse(&self, context: &ParseContext) -> Option<u32>
fn can_parse(&self, context: &ParseContext) -> Option<u32>
Check if this parser can handle the given context.
Returns a priority score (higher = more specific match).
Returns
None if this parser cannot handle the context.Source§fn parse<'a>(&self, data: &'a [u8], _context: &ParseContext) -> ParseResult<'a>
fn parse<'a>(&self, data: &'a [u8], _context: &ParseContext) -> ParseResult<'a>
Parse bytes into structured fields.
Source§fn schema_fields(&self) -> Vec<FieldDescriptor>
fn schema_fields(&self) -> Vec<FieldDescriptor>
Return the schema fields this protocol produces.
Source§fn child_protocols(&self) -> &[&'static str]
fn child_protocols(&self) -> &[&'static str]
Protocols that might follow this one.
Source§fn dependencies(&self) -> &'static [&'static str]
fn dependencies(&self) -> &'static [&'static str]
Protocols that must be parsed before this one can be reached. Read more
Source§fn parse_projected<'a>(
&self,
data: &'a [u8],
_context: &ParseContext,
requested_fields: Option<&HashSet<String>>,
) -> ParseResult<'a>
fn parse_projected<'a>( &self, data: &'a [u8], _context: &ParseContext, requested_fields: Option<&HashSet<String>>, ) -> ParseResult<'a>
Parse with field projection - only extract requested fields. Read more
Source§fn cheap_fields(&self) -> &'static [&'static str]
fn cheap_fields(&self) -> &'static [&'static str]
Returns fields that are “cheap” to extract (header fields parsed anyway). Read more
Source§fn expensive_fields(&self) -> &'static [&'static str]
fn expensive_fields(&self) -> &'static [&'static str]
Returns fields that are “expensive” to extract. Read more
Source§fn payload_mode(&self) -> PayloadMode
fn payload_mode(&self) -> PayloadMode
How should remaining bytes be handled after parsing? Read more
impl Copy for DnsProtocol
Auto Trait Implementations§
impl Freeze for DnsProtocol
impl RefUnwindSafe for DnsProtocol
impl Send for DnsProtocol
impl Sync for DnsProtocol
impl Unpin for DnsProtocol
impl UnwindSafe for DnsProtocol
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more