Parse::...formance(3)
π NAME π
okay so bestie, say hi to Parse::Pidl::Wireshark::Conformance(3) β yep, the User Contributed Perl Documentation one, section 3, she's iconic. And what does she do? She's the Conformance file parser for Wireshark. that's the whole job. periodt. π
πΈ DESCRIPTION πΈ
This module supports parsing Wireshark conformance files (*.cnf). that's it, that's the mission, and she ate. π
β¨ FILE FORMAT β¨
so Pidl needs extra data for Wireshark output, right? and that data gets read from what we call conformance files. this section is literally just the format of those files, so let's get into it. π¦
Conformance files are simple text files with a single command on each line. Empty lines and lines starting with a # character are ignored β like, not even acknowledged, blocked, ghosted. Arguments to commands are separated by spaces.
The following commands are currently supported:
TYPE name dissector ft_type base_type mask valsstring alignmentβ register a brand new data type with that specified name, plus which dissector function to call and what properties to give header fields for elements of this type. it's giving "define the whole vibe of this type" π«NOEMIT typeβ suppresses emitting adissect_typefunction for the type you specify. silence, but make it on purpose.PARAM_VALUE type paramβ sets the parameter to specify to the dissector function for the given type.HF_FIELD hf title filter ft_type base_type valsstring mask descriptionβ generates a custom header field with all of those specified properties. bespoke. handmade. π§΅HF_RENAME old_hf_name new_hf_nameβ forces the use ofnew_hf_namewhen the parser generator was going to useold_hf_name. lowkey a glow-up for your field names β¨- this can be used in conjunction with
HF_FIELDin order to make more than one element use the same filter name.
- this can be used in conjunction with
ETT_FIELD ettβ registers a custom ett field.STRIP_PREFIX prefixβ removes the specified prefix from all function names (if present). no more dead weight πββοΈPROTOCOL longname shortname filternameβ changes the short-, long- and filter-name for the current interface in Wireshark.FIELD_DESCRIPTION field descβ changes the description for the specified header field.fieldhere is the hf name of the field, bestie, don't get it twisted.IMPORT dissector code...β code to insert when generating the specified dissector.@HF@and@PARAM@will be substituted. it's giving template magic πͺINCLUDE filenameβ includes conformance data from the specified filename into the dissector.TFS hf_name "true string" "false string"β overrides the text shown when a bitmap boolean value is enabled or disabled. yes, you get to pick the words πMANUAL fn_nameβ forces pidl to not generate a particular function, but lets the user write a function manually instead. 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 the way theNOEMITcommand does. so like, precision removal vs. full nuke πCODE START/CODE ENDβ begin and end a section of code to be put directly into the generated source file for the dissector. raw, unfiltered, straight in π₯HEADER START/HEADER ENDβ begin and end a section of code to be put directly into the generated header file for the dissector. same energy, different file π«Ά
π EXAMPLE π
INFO_KEY OpenKey.Ke
look at her. short, sweet, doing exactly what she needs to do. π
and that's the whole page, bestie!! this was perl v5.42.3, dated 2026-09-09, from Parse::Pidl::Wireshark::Conformance(3) β read it, love it, use it responsibly. mwah ππΈ
π¦ where this page comes from
- fedora 44: samba-pidl 2:4.24.7-1.fc44 Β· GPL-3.0-or-later AND LGPL-3.0-or-later
- π girlified by deepseek-ai/DeepSeek-V4.1-Flash on : a language model's rewrite of the original, under its terms