从本次文章开始,将要介绍本次专栏《wireshark从入门到精通》最后一部分内容,即wireshark lua插件的编写。在具体讲述插件的使用方法之前呢,先给大家看一下wireshark的源码结构,让大家对于wireshark在代码组织层面有一个大致的了解。
wireshark是一款开源软件,遵守GPL协议其代码可以在官网下载,github上也托管了一份。基于github上面wireshark2.6版本源码整体目录如图1:
图1
可以看到在中级部分介绍的的几个命令都是有对应的.c文件,感兴趣的可以查看具体的实现方式。也可看到对于这些独立的命令来说,wireshark的并没有特别的组织。除了这些单独的.c文件之外,图1还包含了很多的目录,这些目录多数都是wireshark功能的实现,包括界面,各种协议解析器等等。
Wireshark在开发者手册中第六章,这里,给出的总体结构图如图2: