阅读:2068回复:7
采用winpcap实现802.1x客户端的一个问题。求救!!
我采用readfile来实现从网卡采集数据包。可是,一旦机器繁忙的时候,readfile就采集不到数据了,return 0,采集到的字节也是0。造成客户端5分钟就自动断线一次,是什么原因啊????
BOOLEAN PacketReceivePacketNtx(LPADAPTER AdapterObject,LPPACKET lpPacket,BOOLEAN Sync) { BOOLEAN res; char msg[200]; DWORD dwError; if(AdapterObject ==NULL ||lpPacket == NULL) return FALSE; if((int)AdapterObject->ReadTimeOut != -1) { WaitForSingleObject(AdapterObject->ReadEvent, (AdapterObject->ReadTimeOut==0)?INFINITE:AdapterObject->ReadTimeOut); } lpPacket->OverLapped.Offset = 0; lpPacket->OverLapped.OffsetHigh = 0; lpPacket->OverLapped.hEvent = AdapterObject->ReadEvent; ResetEvent(AdapterObject->ReadEvent); res = ReadFile(AdapterObject->hFile, lpPacket->Buffer, lpPacket->Length, &lpPacket->ulBytesReceived, &lpPacket->OverLapped); if(!res) { dwError = GetLastError(); switch (dwError) { case ERROR_HANDLE_EOF: { // we have reached the end of the file break; } case ERROR_IO_PENDING: { // asynchronous i/o is still in progress // check on the results of the asynchronous read res = GetOverlappedResult(AdapterObject->hFile, &lpPacket->OverLapped, &lpPacket->ulBytesReceived, FALSE) ; break; } default: break; } } else { res = GetOverlappedResult(AdapterObject->hFile, &lpPacket->OverLapped, &lpPacket->ulBytesReceived, FALSE) ; } lpPacket->bIoComplete = res; return res; } |
|
|
沙发#
发布于:2004-08-04 17:39
有没有哪个小牛牛给我一段他的实现方法的代码?
谢! |
|
|
板凳#
发布于:2004-08-04 22:01
802.1x客户端?
我有写一个802.1x认证的客户端的 华为三层交换机的 你是作这个的么...... |
|
地板#
发布于:2004-08-05 08:48
802.1x客户端? 对啊对啊对啊.老兄怎么解决采集数据包的问题,也是用readfile么? |
|
|
地下室#
发布于:2004-08-05 11:21
我做的相对简单许多,不过这个帖子还是很有价值的!
tiamo 老兄,你的东西能共享不? mail:paddy_zhao@sina.com |
|
|
5楼#
发布于:2004-08-06 01:05
这分代码不在我现在使用的机器上面
星期天晚上我可以给你发到论碳上面... 如果你要找华为802.1x认证的细结 看看我n早的时候写的个帖子吧... [程序员联盟]--实战华为802.1x认证客户端-tiamo[征文] http://www.51see.com/html/bbs/public/200304241808302383.html 当初心血来潮发到mop上的..... 原来的那个帖子是有图有连接的 这个是转载的没有图也没有连接了 我似乎还保留有认证的sniffer数据包... 星期天晚上可以一起给你... 我没有用readfile这种函数 大部分用的是wpcap.dll里面的函数 |
|
6楼#
发布于:2004-08-08 09:02
这分代码不在我现在使用的机器上面 给我一份代码做参考吧!!!!!!!!!!!! 急死了。。。来北京我请你吃饭啊!! daisyboy@sohu.com QQ: 7252296 |
|
|
7楼#
发布于:2004-08-08 14:42
说了发就一定会给的
呵呵 |
|
|