ANNOUNCEMENT: Live Wireshark University & Allegro Packets online APAC Wireshark Training Session
July 17th, 2024 | 10:00am-11:55am SGT (UTC+8) | Online

Wireshark-dev: Re: [Wireshark-dev] Lua converting a UINT64 to hex

From: Tony Trinh <tony19@xxxxxxxxx>
Date: Mon, 19 Nov 2012 20:26:38 -0600
On Mon, Nov 19, 2012 at 7:46 PM, Tony Trinh <tony19@xxxxxxxxx> wrote:
On Mon, Nov 19, 2012 at 7:42 PM, Tony Trinh <tony19@xxxxxxxxx> wrote:
In your code, the variable "data" is actually a list of instances of the field in the packet (each represented by a FieldInfo object). To get the values, you'll need to iterate the list:

for _,fieldinfo in pairs( data ) do
    print( fieldinfo.label, fieldinfo.value )
end

Woops, forgot to wrap data. Try this:

for _,fieldinfo in pairs({ data }) do
    print( fieldinfo.label, fieldinfo.value )
end

And to get the value in hex, you have to convert the UInt64 object to a string, and pass the result to tonumber().

    print(string.format("%X", tonumber( tostring(fieldinfo.value) ) ))