I thought this was a good idea, just took a while to get around to it: https://code.wireshark.org/review/19211
-----Original Message----- From: Guy Harris <[email protected]> To: Developer support list for Wireshark <[email protected]> Sent: Fri, May 8, 2015 3:09 pm Subject: Re: [Wireshark-dev] proto.h extension On May 8, 2015, at 7:06 AM, "John Dill" <[email protected]> wrote: >> Message: 3 >> Date: Thu, 7 May 2015 11:29:22 -0700 >> From: Guy Harris <[email protected]> >> To: Developer support list for Wireshark <[email protected]> >> Subject: Re: [Wireshark-dev] proto.h extension >> Message-ID: <[email protected]> >> Content-Type: text/plain; charset=iso-8859-1 >> >> On May 7, 2015, at 8:13 AM, "John Dill" <[email protected]> wrote: >> >>> I have a couple of extensions that I created for the Wireshark baseline >> that we're using (1.10.x). The diffs to proto.h and proto.c show the code >> changes to add a couple of features that I've found useful, unit strings >> and hiding the bits for bitmask header fields. >>> >>> http://codepad.org/KTGdEL1t >> >> You need more than >> >> /* Following constants have to be ORed with a base_display_e when >> dissector >> * want to control aspects of the display string for a >> header_field_info */ >> >> as a comment there - you need comments explaining what each of those flags >> actually *does*. > > Guy, > > Sorry it wasn't clear. Starting from this snippet... > > /* > * BASE_UNIT_STRING - Append a unit string to the numeric value That one's reasonable; I've thought of a similar option. > * > * When active, Wireshark will append a unit string declared as a > * simple 'char *' for the 'strings' to the numeric value. You might want to, instead, have it be a structure with a pair of strings, so that if the field has the value 1, you can print the singular rather than the plural, e.g.: struct unit_names { char *singular; /* name to use for 1 unit */ char *plural; /* name to use for < 1 or > 1 units */ }; struct unit_names feet { "foot", "feet" }; { &hf_MFD_State_Data_Slew_Elevation_Ch1, { "Slew_Elevation_Ch1", "ndo.MFD_State_Data.Slew_Elevation_Ch1", FT_FLOAT, BASE_NONE | BASE_UNIT_STRING, &feet, 0x0, NULL, HFILL } }, (For floating-point numbers, "1 unit" means "*exactly* 1 unit", i.e. an exact floating-point comparison with 1x2^0.) We could either 1) require that both be non-null or 2) assume that, if the plural is null, you can pluralize using the standard rules of English. Does anybody have a preference there?
___________________________________________________________________________ Sent via: Wireshark-dev mailing list <[email protected]> Archives: https://www.wireshark.org/lists/wireshark-dev Unsubscribe: https://www.wireshark.org/mailman/options/wireshark-dev mailto:[email protected]?subject=unsubscribe
