WinPcap教程:(4)不用回调方式捕获数据包
来源:互联网 发布:mac安全性偏好设置卡死 编辑:程序博客网 时间:2024/05/18 22:54
本文所实现的功能和效果和上一讲的非常相似,但本文将用pcap_next_ex()函数代替上文的pcap_loop() 函数。
pcap_loop() 函数是基于回调的原理来进行数据捕获,这是一种精妙的方法,并且在某些场合中,它是一种很好的选择。然而,处理回调有时候并不实用。它会增加程序的复杂度,特别是在拥有多线程的C++程序中。
可以通过直接调用pcap_next_ex()函数来获得一个数据包。只有当编程人员使用了pcap_next_ex()函数才能收到数据包。
这个函数的参数和捕获回调函数的参数是一样的。它包含一个网络适配器的描述符和两个可以初始化和返回给用户的指针(一个指向 pcap_pkthdr结构体,另一个指向数据报数据的缓冲)。
while((res = pcap_next_ex(adhandle,&header,&pkt_data))>=0) { if(res ==0){ //返回值为0代表接受数据包超时,重新循环继续接收printf("超时\n"); continue; }else{ //运行到此处代表接受到正常从数据包,可以对包进行处理}}
阅读全文
0 0
- WinPcap教程:(4)不用回调方式捕获数据包
- WinPcap编程【5】不用回调方法捕获数据包
- WinPcap编程【5】不用回调方法捕获数据包
- WinPcap学习(五)不用回调方法捕获数据包
- WinPcap笔记(5):不用回调方法捕获数据包
- Winpcap打开适配器并捕获数据包:不用回调方法捕获数据包
- [网络分析] 3 不用回调的方式捕获数据包
- 不用回调方法捕获数据包
- 不用回调方法捕获数据包
- WinPcap编程4——捕获数据包
- WinPcap编程4——捕获数据包
- WinPcap捕获数据包
- WinPcap教程:(3)打开适配器并捕获数据包
- 用WinPcap技术捕获数据包
- 利用WinPcap技术捕获数据包
- Winpcap捕获数据包并转发
- 利用WinPcap技术捕获数据包
- Winpcap教程(获取数据包)
- androidStudio中使用svn进行代码的更新和提交(六)
- 使用java语言实现进制之间的相互转换
- 【iOS开发】iOS系统更新到10.3以上无法下载企业应用
- MAC系统安装Vue.js开发环境
- iOS中使用RSA加密
- WinPcap教程:(4)不用回调方式捕获数据包
- 读廖雪峰的 Python 教程小结--------Python基础
- 字符串匹配(Java)
- 在linux下运用mutt和msmtp发邮件
- Framework的anim下各xml简介
- Caused by: java.lang.IllegalStateException: You need to use a Theme.AppCompat theme (or descendant)
- JAVA基础(五)之Servlet
- 关于stm32stop模式下,串口唤醒中的问题及解决办法
- 当红架构Cloud_Native_怎么搭建才能成为上云助攻手?