pcap_next_ex(pcap_t* p,struct pcap_pkthdr** pkt_header,const u_char** pkt_data)spa
功能: 從interface或離線記錄文件獲取一個報文code
參數: p: 已打開的捕捉實例的描述符blog
pkt_header: 報文頭class
pkt_data: 報文內容方法
返回值: 1: 成功im
0: 獲取報文超時next
-1: 發生錯誤數據
-2: 獲取到離線記錄文件的最後一個報文di
其中:文件
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; 。。。。。。。。。。 。。。。。。 }