10.1 使用WinPcap接收数据包
10.1.1 wpcap.dll库导出的相应函数
wpcap.dll库为数据包的接收提供了下列函数。
pcap_loop函数,用于接收一组数据包,其原型如下:
int pcap_loop(pcap_t*p,int cnt,pcap_handler callback,
u_char*user);
pcap_dispatch函数,用于接收一组数据包,其原型如下:
int pcap_dispatch(pcap_t*p,int cnt,pcap_handler callback,
u_char*user);
pcap_next函数,用于返回下一个可用的数据包,其原型如下:
u_charpcap_next(pcap_tp,struct pcap_pkthdr*h);
pcap_next_ex函数,用于从一个网络适配器设备或从一个脱机文件中读取一个数据包,替代pcap_next函数,其原型如下:
int pcap_next_ex(pcap_tp,struct pcap_pkthdr*pkt_header,
const u_char**pkt_data);
pcap_breakloop函数,用于设置一个标志位,该标志会强制pcap_dispatch函数或pcap_loop函数返回,而不再继续循环,其原型如下:
void pcap_breakloop(pcap_t*p);