我使用PCAP庫,但我不知道爲什麼我總是得到這樣的輸出:用大小pcap爲什麼總是8個字節的數據包...爲什麼?
新的數據包:UDATA = 8 HDR = 8 PKT = 8
這是代碼:
void handle_pcap(u_char *udata, const struct pcap_pkthdr *hdr, const u_char *pkt)
{
DEBUG("DANY new packet with size: udata= %d hdr=%d pkt=%d", (int) sizeof(udata),(int) sizeof(hdr),(int) sizeof(pkt));
...
stuff
}
,並在另一個文件中使用:
status = pcap_loop (pcap_obj,
-1 /* How many packets it should sniff for before returning (a negative value
means it should sniff until an error occurs (loop forever)) */,
handle_pcap /* Callback that will be called*/,
NULL /* Arguments to send to the callback (NULL is nothing) */);
是不是正常的輸出?
我認爲不是因爲有時候我的程序有時候不工作。
您需要將答案標記爲正確。 – Benubird 2011-02-24 17:59:51