visual-studio-codeluawireshark-dissector

What is the Wireshark lua package path?


Our custom Wireshark dissector, coded in lua, starts with:

-- Create a protocol object
test_protocol = Proto("test",  "test protocol")

messageLength_F = ProtoField.uint32("test.messageLength", "messageLength", base.HEX)
requestID_F     = ProtoField.uint32("test.requestID"    , "requestID"    , base.HEX)
responseTo_F    = ProtoField.uint32("test.responseTo"   , "responseTo"   , base.HEX)
opCode_F        = ProtoField.uint32("test.opCode"       , "opCode"       , base.HEX)

It works fine but the Visual Studio Code lua extension that I am using (sumneko.lua) reports that Proto and ProtoField are undefined globals. I guess that I need to tell the extension the lua runtime package path.

What is the package path for Wireshark?

Should I specify that path in the dissector using require?


Solution

  • My question is answered here: https://github.com/sumneko/lua-language-server/issues/545