1
考慮下面的例子:如何創建Protofield子陣列的Lua Wireshark的剝離
local f= mycoolprotocol.fields
f.Length = ProtoField.uint32("MCP.Length","Length",base.DEC)
f.MsgType = ProtoField.uint16("MCP.MsgType","MsgType",base.DEC)
我宣佈2個Protofields。但是想象一下,我有一個重複的組或項目的數組:
和消息體看起來像這樣:
struct person
{
int16 age;
string name;
}
person[] p = new person[2];
理想情況下,我想創造Wireshark的一個子樹爲該組
+ Persons
+ Person1
name
age
+ Person2
name
age
問題是我不知道如何在Lua中構造這個。這聲明2個protofields:
f.name = Protofield.string("MCP.name","name","Text")
f.age = ProtoField.uint16("MCP.age","age",base.DEC)
但我想創建組的動態數組,而不是,所以我可以做:
subtree:add_le(f[0].name, buffer(x,y))
那麼,有沒有一個Protofield.ProtoFieldArray
? 這可能嗎?歡迎任何其他想法。
謝謝。
此外,作爲參考: http://ask.wireshark.org/questions/28038/how-to-create-a-protofield-sub-array-in-lua