代码之家  ›  专栏  ›  技术社区  ›  Lehtim

什么是VoidString对象?

  •  0
  • Lehtim  · 技术社区  · 7 年前

    我正在为Wireshark编写一个LUA解析器,并且读到了一个VoidString对象,它可以在创建ProtoField对象时通过。看见 https://wiki.wireshark.org/LuaAPI/Proto#ProtoField 了解更多信息。我不想再谈论这个物体以及使用它的目的。如果我点击“VoidString”链接,很遗憾会显示一个空白页面,因为该对象的文档似乎丢失了。我在谷歌上搜索了一下,但什么也没找到。有什么想法吗?

    提前谢谢!

    1 回复  |  直到 7 年前
        1
  •  1
  •   Aldo Perez    6 年前

    我从Wireshark提供的示例中了解到,voidString可以传递给一个表。此表将您期望的值与该值的含义进行映射。

    local packet_type = {
            [0] = "Data",
            [1] = "heartBeat",
            [2] = "Keep Alive",
    }
    local pf_packet_type = ProtoField.uint16("my_discector.packet_type", "Packet Type", base.DEC, packet_type, nil, "This describes a packet type")
    

    这个数据包将显示字符串以及它得到的实际值,而不仅仅是值。希望这有帮助。