WEB开发网
开发学院操作系统windows 2008 深度剖析WinPcap之(六)——驱动程序的初始化与清除... 阅读

深度剖析WinPcap之(六)——驱动程序的初始化与清除

 2009-09-11 00:00:00 来源:WEB开发网   
核心提示: 下面分别说明结构体_NDIS_PROTOCOL_CHARACTERISTICS各成员的作用,其中,深度剖析WinPcap之(六)——驱动程序的初始化与清除(2),只在面向连接的协议驱动程序中使用的成员不作分析说明,MajorNdisVersion描述驱动程序所使用NDIS库的主要版本,对Ndis

下面分别说明结构体_NDIS_PROTOCOL_CHARACTERISTICS各成员的作用,其中,只在面向连接的协议驱动程序中使用的成员不作分析说明。

MajorNdisVersion

描述驱动程序所使用NDIS库的主要版本。当前值为0x05(WinPcap当前使用的为版本5,NDIS目前已到版本6),虽然NDIS库支持早期采用NDIS V4.0开发的驱动程序,但不再对V3.0版本的协议驱动程序进行支持。

MinorNdisVersion

描述NDIS的次版本,当前为0x00。

Reserved

该成员保留给系统使用。

OpenAdapterCompleteHandler

这是一个必须提供的函数。如果协议驱动程序对NdisOpenAdapter的调用返回NDIS_STATUS_PENDING,则接着调用ProtocolOpenAdapterComplete来完成绑定操作。

CloseAdapterCompleteHandler

这是一个必须提供的函数。如果协议驱动程序对NdisCloseAdapter的调用返回NDIS_STATUS_PENDING,则接着调用ProtocolCloseAdapterComplete来完成解除绑定操作。

SendCompleteHandler

这是一个必须提供的函数。如果协议驱动程序对NdisSendPackets或 NdisSend的调用返回NDIS_STATUS_PENDING,则接着调用SendCompleteHandler来完成发送处理。

TransferDataCompleteHandler

如果协议驱动程序可以把它自己绑定到一个低层非面向连接的NIC驱动程序(以NdisMIndicateReceivePacket指定并不是接收所有的数据包)上,这就是一个必须提供的函数。当协议驱动程序发起传输数据请求,对NdisTransferData的调用返回 NDIS_STATUS_PENDING时,ProtocolTransferDataComplete函数被调用。专门面向连接的协议驱动程序不需要ProtocolTransferDataComplete 函数。

ResetCompleteHandler

上一页  1 2 3 4 5 6 7  下一页

Tags:深度 剖析 WinPcap

编辑录入:爽爽 [复制链接] [打 印]
赞助商链接