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.