[工学]第7章 Winpcap编程技术.ppt

  1. 1、本文档共49页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
[工学]第7章 Winpcap编程技术

第七章 Winpcap编程技术 内容 开发Winpcap的目的是为Win32应用程序提供访问网络底层的能力。它提供了以下的各项功能: 捕获原始数据报,包括在共享网络上各主机发送/接收的以及相互之间交换的数据报; 在数据报发往应用程序之前,按照自定义的规则将某些特殊的数据报过滤掉; 在网络上发送原始的数据报; 收集网络通信过程中的统计信息。 5、BOOLEAN PacketGetAdapterNames(LPSTR pStr,PULONG BufferSize) ????????返回可以得到的网络适配器列表及描述。 6、LPADAPTER PacketOpenAdapter(LPTSTR AdapterName) ????????打开一个网络适配器。 7、 BOOLEAN PacketReceivePacket(LPADAPTER AdapterObject,LPPACKET lpPacket,BOOLEAN Sync) ???????从NPF驱动程序读取网络数据报及统计信息。 ???????数据报封装结构: |bpf_hdr|data|padding| 8、BOOLEAN PacketSetBuff(LPADAPTER AdapterObject,int dim) ????????设置捕获数据报的内核级缓冲区大小。 9、BOOLEAN PacketSetHwFilter(LPADAPTER AdapterObject,ULONG Filter) 为接收到的数据报设置硬件过滤规则。 10、BOOLEAN PacketSetReadTimeout(LPADAPTER AdapterObject,int timeout) ? 设置读操作等待时间。 11、BOOLEAN PacketGetNetInfoEx(LPTSTR AdapterNames,npf_ip_addr *buff, PLONG NEntries) ????????返回某个网络适配器的地址信息。 12、BOOLEAN PacketGetNetType(LPADAPTER AdapterObject, NetType *type) ????????返回某个网络适配器的类型和速度。 13、BOOLEAN PacketGetStats(LPADAPTER AdapterObject,struct bpf_stat *s) ????????返回关于当前捕获的统计信息。 14、PCHAR PacketGetVersion() ??????? 返回packet.dll的版本信息。 15、BOOLEAN PacketSendPacket(LPADAPTER AdapterObject,LPPACKET lpPacket, BOOLEAN Sync) ??????发送一个或多个数据报的副本。 16、BOOLEAN PacketSetNumWrites(LPADAPTER AdapterObject,int nwrites) ???????设置调用PacketSendPacket()函数发送一个数据报副本的最大重发次数。 Packet.dll的工作流程 4、pcap_dumper_t *pcap_dump_open(pcap_t *p,char *filename) 打开一个保存数据包的文件,其文件格式固定,和tcpdump等文件格式相兼容。 过滤规则串: dst host host src host host host host ether dst ehost dst port port tcp /docs/docs_40_2/html/group__language.html 7、int pcap_setfilter (pcap_t *p, struct bpf_program *fp) 功能:设置过滤器规则。 输入参数:fp为指到结构体 bpf_program 的指针。 返回:失败返回-1。 8、int pcap_dispatch(pcap_t *p, int cnt,pcap_handler callback, u_char *user) 功能:捕获并处理数据包。 输入参数: cnt参数指定函数返回前所处理数据包的最大值。callback参数指定一个带有三个参数的回调函数。参数user为用户传递给回调函数的指针。 返回:失败返回-1。成功则返回读取到的字节数。 9、int pcap_loop (pcap_t *p, int cnt, pcap_handler callback, u_char *user)

文档评论(0)

qiwqpu54 + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档