1.版权申明
最近需要对Wireshark进行二次开发,主要是添加对自定义协议的解析功能,而Wireshark支持以Lua脚本实现此需求,此外,Wireshark中的Lua脚本还支持许多其他的功能,十分强大。
基于上述理由,本人翻译了Wireshark官方文档中关于Lua插件开发的API参考文档部分,即Wireshark官方文档的第11章,Wireshark’s Lua API Reference Manual,也因本章属于原官方文档的第11章,作者在标题中都将以 11.* 的格式命名。
本文档的翻译的初衷也是希望能为有相同需求的同学提供帮助,因此欢迎转载,只需附上作者姓名与原文链接即可。
如果在文档使用过程中有任何问题,请与作者联系 ifanxi1998@gmail.com ;
2.表达规范
本章涉及到对代码中函数的表现遵从以下规范:
- Class.function() 表示类的一个方法,不需要携带参数;
- Class.function(a) 表示需一个要传入一个参数的类的方法;
- Class.function(...) 表示一个可传入数量可变参数的类的方法
- class:method() 表示类的一个实例方法,注意这里class的C是小写,用来表明这是类的一个实例;
- class.prop 表示类的实例的一个属性;
3.文档索引
[Wireshark] 11.4.Post-Dissection Packet Analysis
[Wireshark] 11.6.新协议与解析器的方法(Functions For New Protocols And Dissectors)