我正在爲Lua編寫一個解析器,用於定製二進制協議。我已經定義了三個字段類型:wireshark中的數據包數據未使用我的自定義解剖器點擊突出顯示
f.field1= ProtoField.bytes("myproto.field1","Field 1",base.HEX)
f.field2= ProtoField.uint16("myproto.field2","Field 2",base.HEX)
f.field3= ProtoField.bytes("myproto.field3","Field 3",base.HEX)
這些字段添加到樹這樣的:
subtree:add(f.field1,buf(offset,4))
offset = offset +4
val2=buf(offset,2):uint()
-- some logic around populating f2_description omitted
offset=offset+2
subtree:add(f.field2,val2):append_text(" (" ..f2_description ..")")
subtree:add(f.field3,buf(offset,2))
現在,當我打開Wireshark的和解剖數據包的樹點擊字段1或字段3,我看到所選擇的數據被高亮顯示在原始包六角視圖(底部最面板):
,但它不是對字段2的情況下:
我在做什麼錯?
ask.wireshark.org提供了一個有用的參考答案:http://ask.wireshark.org/questions/8982/packet-data-in-wireshark-not-highlighted-on-click-using-my-定製解剖器 – Konrads 2012-02-26 08:28:03