Important: |
---|
This is retired content. This content is outdated and is no longer being maintained. It is provided as a courtesy for individuals who are still using these technologies. This content may contain URLs that were valid when originally published, but now link to sites or pages that no longer exist. |
ProtocolReceiveCompleteis a required driver function in any protocol. ProtocolReceiveCompletecompletes postprocessing of one or more preceding receive indications from a network adapter driver.
VOID ProtocolReceiveComplete( IN NDIS_HANDLE ProtocolBindingContext );
Parameters
Comments
ProtocolReceiveCompleteperforms postprocessing, such as notifying interested clients of processed data received from a remote node, after one or more calls to the driver's ProtocolReceivefunction.
When an underlying miniport calls NdisM..IndicateReceiveComplete, NDIS calls the ProtocolReceiveCompletefunction(s) of bound protocol(s). NDIS always calls ProtocolReceiveCompleteafter one or more calls to the driver's ProtocolReceivefunction, regardless of whether any particular packet(s) are accepted by bound protocols.
An underlying miniport need not make calls to NdisM..IndicateReceivein one-to-one correspondence with its calls to NdisM..IndicateReceiveComplete. ProtocolReceiveCompleteis re-entrant because the underlying network adapter driver sometimes must wait to call NdisM..IndicateReceiveCompleteuntil no receive operations are in progress.
After ProtocolReceiveCompleteis called, the underlying network adapter driver can make another receive indication before ProtocolReceiveCompletereturns control, so ProtocolReceiveCompletecan execute concurrently with the driver's ProtocolReceivefunction in SMP machines.
Requirements
Runs on | Versions | Defined in | Include | Link to |
---|---|---|---|---|
Windows CE OS | 2.0 and later | Ndis.h | Ndislib.lib |
Note This API is part of the complete Windows CE OS package as provided by Microsoft. The functionality of a particular platform is determined by the original equipment manufacturer (OEM) and some devices may not support this API.
See Also
ProtocolReceive, NdisOpenAdapter