在Lua Wireshark剖析器中执行解剖函数



我有一个 Lua Wireshark 剖析器,其结构如下:

-- Initialize Protocol
-- Initialize Protocol Fields
-- Register Protocol Fields
-- DissectionFunction(tvbuf, pktinfo, root)
-- Initialize Protocol
-- Function definitions.

我写了一个函数,我想用它来计算一些值,然后在剖析器中使用这些值。所以我在解剖函数之外和函数定义部分编写了我的函数。

但是函数调用也可以在析构函数中工作,如果在析构函数之外调用,Wireshark 无法识别它。在解剖函数中调用它效率非常低,因为它只需要执行一次,并且将针对每一帧执行。

有没有办法在解剖功能之外调用它一次?

我不太确定问题是什么,但你可以在 Lua 中执行以下操作

local function calculate_constant_value()
  return a * b + c
end
local my_constant_value = calculate_constant_value()
function proto.dissector()
  -- use my_constant_value here
end

最新更新