|
Wireshark 4.7.0
The Wireshark network protocol analyzer
|
Describes a parsing rule or expectation for a tvbuff parser. More...
#include <tvbparse.h>
Public Attributes | ||
| int | id | |
| tvbparse_condition_t | condition | |
| union { | ||
| const char * str | ||
| struct _tvbparse_wanted_t ** handle | ||
| struct { | ||
| union { | ||
| int64_t i | ||
| uint64_t u | ||
| double f | ||
| } value | ||
| } number | ||
| enum ftenum ftenum | ||
| struct { | ||
| until_mode_t mode | ||
| const tvbparse_wanted_t * subelem | ||
| } until | ||
| struct { | ||
| wmem_map_t * table | ||
| struct _tvbparse_wanted_t * key | ||
| struct _tvbparse_wanted_t * other | ||
| } hash | ||
| GPtrArray * elems | ||
| const tvbparse_wanted_t * subelem | ||
| void * p | ||
| } | control | |
| Control parameters for the parsing rule. | ||
| int | len | |
| unsigned | min | |
| unsigned | max | |
| const void * | data | |
| tvbparse_action_t | before | |
| tvbparse_action_t | after | |
Describes a parsing rule or expectation for a tvbuff parser.
This structure defines a unit of parsing logic used by the tvbparse engine. It specifies conditions, control parameters, length constraints, and optional pre/post actions to guide how data is extracted from a tvbuff.
| tvbparse_action_t _tvbparse_wanted_t::after |
Action to perform after parsing this element.
| tvbparse_action_t _tvbparse_wanted_t::before |
Action to perform before parsing this element.
| tvbparse_condition_t _tvbparse_wanted_t::condition |
Condition that determines when this rule applies.
| union { ... } _tvbparse_wanted_t::control |
Control parameters for the parsing rule.
The active member depends on the parsing strategy. This union supports string matching, numeric values, nested rules, hash-based dispatch, and other advanced parsing constructs.
| const void* _tvbparse_wanted_t::data |
Optional user-defined data associated with the rule.
| GPtrArray* _tvbparse_wanted_t::elems |
Array of sub-elements to parse.
| double _tvbparse_wanted_t::f |
Floating-point value.
| enum ftenum _tvbparse_wanted_t::ftenum |
Field type enum for typed parsing.
| struct _tvbparse_wanted_t** _tvbparse_wanted_t::handle |
Pointer to a rule handle array.
| int64_t _tvbparse_wanted_t::i |
Signed integer value.
| int _tvbparse_wanted_t::id |
Unique identifier for the parsing rule.
| struct _tvbparse_wanted_t* _tvbparse_wanted_t::key |
Key to use for lookup.
| int _tvbparse_wanted_t::len |
Expected length of the parsed element (if fixed).
| unsigned _tvbparse_wanted_t::max |
Maximum length constraint.
| unsigned _tvbparse_wanted_t::min |
Minimum length constraint.
| until_mode_t _tvbparse_wanted_t::mode |
Mode for "until" parsing (e.g., until match or delimiter).
| struct { ... } _tvbparse_wanted_t::number |
Numeric value to match.
| struct _tvbparse_wanted_t* _tvbparse_wanted_t::other |
Fallback rule if key not found.
| void* _tvbparse_wanted_t::p |
Generic pointer for custom control data.
| const char* _tvbparse_wanted_t::str |
String to match.
| const tvbparse_wanted_t* _tvbparse_wanted_t::subelem |
Sub-element to parse until.
Single sub-element reference.
| wmem_map_t* _tvbparse_wanted_t::table |
Lookup table for dispatching based on key.
| uint64_t _tvbparse_wanted_t::u |
Unsigned integer value.