NAME¶
Parse::Pidl::Wireshark::Conformance - Conformance file parser for Wireshark
DESCRIPTION¶
This module supports parsing Wireshark conformance files (*.cnf).
Pidl needs additional data for Wireshark output. This data is read from
so-called conformance files. This section describes the format of these files.
Conformance files are simple text files with a single command on each line.
Empty lines and lines starting with a '#' character are ignored. Arguments to
commands are separated by spaces.
The following commands are currently supported:
- TYPE name dissector ft_type base_type mask
valsstring alignment
- Register new data type with specified name, what dissector
function to call and what properties to give header fields for elements of
this type.
- NOEMIT type
- Suppress emitting a dissect_type function for the specified
type
- PARAM_VALUE type param
- Set parameter to specify to dissector function for given
type.
- HF_FIELD hf title filter ft_type base_type
valsstring mask description
- Generate a custom header field with specified
properties.
- HF_RENAME old_hf_name new_hf_name
- Force the use of new_hf_name when the parser generator was
going to use old_hf_name.
This can be used in conjunction with HF_FIELD in order to make more than one
element use the same filter name.
- ETT_FIELD ett
- Register a custom ett field
- STRIP_PREFIX prefix
- Remove the specified prefix from all function names (if
present).
- PROTOCOL longname shortname filtername
- Change the short-, long- and filter-name for the current
interface in Wireshark.
- FIELD_DESCRIPTION field desc
- Change description for the specified header field. `field'
is the hf name of the field.
- IMPORT dissector code...
- Code to insert when generating the specified dissector.
@HF@ and @PARAM@ will be substituted.
- INCLUDE filename
- Include conformance data from the specified filename in the
dissector.
- TFS hf_name "true string" "false
string"
- Override the text shown when a bitmap boolean value is
enabled or disabled.
- MANUAL fn_name
- Force pidl to not generate a particular function but allow
the user to write a function manually. This can be used to remove the
function for only one level for a particular element rather than all the
functions and ett/hf variables for a particular element as the NOEMIT
command does.
EXAMPLE¶
INFO_KEY OpenKey.Ke