pcap_next_ex()函数


pcap_next_ex(pcap_t* p,struct pcap_pkthdr** pkt_header,const u_char** pkt_data)

功能: 从interface或离线记录文件获取一个报文

参数: p: 已打开的捕捉实例的描述符

         pkt_header: 报文头

         pkt_data: 报文内容

返回值: 1: 成功

             0: 获取报文超时

            -1: 发生错误

            -2: 获取到离线记录文件的最后一个报文

 

其中:

struct pcap_pkthdr

{

      struct timeval ts;   ts是一个结构struct timeval,它有两个部分,第一部分是1900开始以来的秒数,第二部分是当前秒之后的毫秒数

      bpf_u_int32 caplen;  表示抓到的数据长度

      bpf_u_int32 len;    表示数据包的实际长度

}

 

使用方法:

 while ((res = pcap_next_ex(fp, &header, &pkt_data)) >= 0)
    {
        //超时
        if (res == 0)
            continue;
。。。。。。。。。。
。。。。。。


     }

 


免责声明!

本站转载的文章为个人学习借鉴使用,本站对版权不负任何法律责任。如果侵犯了您的隐私权益,请联系本站邮箱yoyou2525@163.com删除。



 
粤ICP备18138465号  © 2018-2025 CODEPRJ.COM