私はカスタムのバイナリプロトコル用にLuaでディセクタを書いています。3つのフィールドタイプを定義しました。
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を開いて、分析されたパケットのツリーでField1またはField3をクリックすると、選択したデータが生のパケットの16進ビュー(一番下のパネル)で強調表示されていることがわかります。
、ただし、Field2の場合はそうではありません。
私は何が間違っているのですか?