c++ - Wireshark 开发 - registerTapListener
问题描述
我是使用 Wireshark 开发的新手,我必须承认我在订阅解剖消息和解析返回的解剖树的源代码和文档中有点迷失。我修改的目标是使用点击订阅所有 UDP 消息并解析帧的低级别细节以了解我是否对它感兴趣以用于统计目的。对于下面的所有示例,我都有 WiresharkDialog (ui) 的子类:
为 UDP 数据包注册 Tap 侦听器
registerTapListener("udp",this,"",TL_REQUIRES_PROTO_TREE, tapReset,
tapPacket,
tapDraw);
然后,我尝试读取分接数据包 epan_dissect_t,以查看解剖树,但显然遗漏了一些东西。
tap_packet_status test::tapPacket(void *iog_ptr, packet_info *pinfo, epan_dissect_t *edt, const void *)
{
qDebug() << "Epan proto Name " << edt->pi.current_proto;
}
返回“”;
我读过的文档似乎并不建议我需要运行 epan_dissect_run 来剖析我可能错的数据包。我还想了解如何剖析 UDP 下的所有低级协议,包括一些通过 Lua 脚本加载的自定义协议。
并且建议或指针(即使是文档/示例)将不胜感激。
解决方案
推荐阅读
- heroku - heroku laravel 错误:无法建立隧道套接字,原因=连接 ECONNREFUSED 127 .0.0.1:8080
- jmeter - 无法使用 Jmeter 捕获 CRM Dynamics 365 应用程序的请求响应
- reactjs - 使用 react-validation-mixin 验证 redux-form
- .net - 验证 ipv6 地址时出错.Net
- c# - 如何在c#中的winforms中将搜索和清除图标显示到右端的文本框中
- angular - 发布请求正在转换为两个 GET 请求。我不敢相信我的眼睛
- css - 反应组件未在浏览器上显示
- reactjs - React-Test-Render 调用组件方法
- android - Android Studio 如何在我的 seekBar 中显示系统音量变化?
- ignite - 可以在 StreamReceiver/Visitor 的单独节点上执行 Ignite Streamer.addData 吗?