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?
My question is answered here: https://github.com/sumneko/lua-language-server/issues/545