阅读:1821回复:3
请教passthru中间层驱动的一个较高深问题的解决办法
请问:passthru 驱动中,经观察,为什么发送出去的帧,又总是再接收回来了呢?如何解决?
|
|
沙发#
发布于:2008-09-12 17:05
问题太抽象。
发出去的是什么帧呢?收回来的和发出去的内容完全一样吗? 比如下面这种情况就有可能: 你发出去的是broadcast包,而你的miniport修改了source mac address(passthru和miniport里是可以用不同的mac address的),这样发出去的包经过一些路由或转发可能还会发给你,你的miniport收到后如果不滤掉passthru就会再收到。 当然还有很多别的可能,所以解决办法是,在passthru的发送端和接收端打印出完整的包的内容,然后分析是什么原因。 |
|
板凳#
发布于:2008-09-12 17:14
应该是没有设置NDIS_FLAGS_DONT_LOOPBACK吧?
你可以在包发送前: NdisSetPacketFlags(Packet, NDIS_FLAGS_DONT_LOOPBACK); 试试!。 |
|
地板#
发布于:2008-11-07 11:26
多谢, 我试试
|
|