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