本文转自http://eslxf.blog.51cto.com/918801/210890
1.6.3.3 NPF_RequestComplete函数
函数结束一个OID请求,是NDIS函数
NdisRequest
所关联的回调函数。当NIC驱动程序完成一个OID请求操作(如在
NPF_GetDeviceMTU
或NPF_IoControl
中调用
NdisRequest
开始请求操作)后被NDIS调用。函数原型如下:
VOID
NPF_RequestComplete(
IN NDIS_HANDLE ProtocolBindingContext,
IN PNDIS_REQUEST NdisRequest,
IN NDIS_STATUS Status
)
参数ProtocolBindingContext为函数的上下文,包含一个指向与当前实例关联的OPEN_INSTANCE结构体指针。参数
NdisRequest
为指向该已完成OID请求的指针。参数
Status
为请求操作的状态
。
函数的主要代码如下:
VOID
NPF_RequestComplete(
IN NDIS_HANDLE ProtocolBindingContext,
IN PNDIS_REQUEST NdisRequest,
IN NDIS_STATUS Status
)
{
PINTERNAL_REQUEST pRequest;
pRequest = CONTAINING_RECORD(NdisRequest,INTERNAL_REQUEST,Request);
//
设置请求结果
pRequest->RequestStatus = Status;
//
唤醒调用者
NdisSetEvent(&pRequest->InternalRequestCompletedEvent);
return;
}