Wireshark mailing list archives

Re: Does lua provide something like range strings?


From: Peter Wu <peter () lekensteyn nl>
Date: Wed, 10 Oct 2018 18:29:52 +0200

On Tue, Oct 09, 2018 at 11:38:29AM -0700, Richard Sharpe wrote:
On Tue, Oct 9, 2018 at 7:14 AM Peter Wu <peter () lekensteyn nl> wrote:

Hi Richard,

On Mon, Oct 08, 2018 at 10:59:35AM -0700, Richard Sharpe wrote:
I am wondering if the Lua interp in Wireshark provides the equivalent
of range strings?

Does anyone know?

I guess I could make the indexes strings, since they are associative
arrays anyway but looking up a value in a range would be difficult.

There does not seem to be support for range strings, but it could be
added. See value_string_from_table in epan/wslua/wslua_proto_field.c for
an example.

I suppose that the natural syntax would be:

    local your_range_string = {
        { 0, 24, "First quarter" },
        { 25, 54, "Second quarter" },
    };

Hmmm, I think it might need more than that:

#define WSLUA_OPTARG_ProtoField_new_VALUESTRING 4 /* A table
containing the text that
        corresponds to the values, or a table containing unit name for
the values if base is
        `base.UNIT_STRING`, or one of `frametype.NONE`,
`frametype.REQUEST`, `frametype.RESPONSE`,
        `frametype.ACK` or `frametype.DUP_ACK` if field type is
ftypes.FRAMENUM. */

The code handling a new ProtoField assumes that arg 4 is a ValueString
... there would have to be some way to indicate that it is a range
string.

The BASE field is field 5. We could have symbols ORed into that, I guess.

Right, the current documentation already contains a case for
base.UNIT_STRING, you would have to add an additional base.RANGE_STRING.

Will you be working on this feature?
-- 
Kind regards,
Peter Wu
https://lekensteyn.nl
___________________________________________________________________________
Sent via:    Wireshark-dev mailing list <wireshark-dev () wireshark org>
Archives:    https://www.wireshark.org/lists/wireshark-dev
Unsubscribe: https://www.wireshark.org/mailman/options/wireshark-dev
             mailto:wireshark-dev-request () wireshark org?subject=unsubscribe

Current thread: