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. |
This function notifies the PPP protocol driver that one or more receives have been completed so that PPP can notify the appropriate bound protocol(s).
VOID NdisMWanIndicateReceiveComplete( IN NDIS_HANDLE MiniportAdapterHandle IN NDIS_HANDLE NdisLinkContext );
Parameters
Return Values
None
Remarks
After any WAN receive indication, a miniport must eventually call NdisMWanIndicateReceiveComplete.
NdisMWanIndicateReceiveCompleteboth indicates the completion of a transfer operation for a receive and notifies any bound protocol that has already consumed the initial indication that it can begin postprocessing the received data.
When a miniport calls NdisMWanIndicateReceiveComplete, the PPP protocol driver calls the ProtocolReceiveCompletefunction(s) of bound protocol driver(s). ProtocolReceiveCompletefunctions need not operate under the severe time constraints of the corresponding ProtocolReceivefunctions.
A WAN miniport need not call NdisMWanIndicateReceiveCompletein one-to-one correspondence with its calls to NdisMWanIndicateReceive. That is, a network adapter driver can issue a single receive-complete indication for some number of receive indications, particularly when a sequence of receives is coming in to its network adapter. Such a driver can call NdisMWanIndicateReceiveCompleteafter several calls to NdisMWanIndicateReceivehave occurred, thereby giving bound protocols the opportunity to notify clients of received packets without incurring the overhead of processing one-to-one completion notifications. As a general rule, a miniport should call NdisMWanIndicateReceiveCompleteonce for every ten receive indications when network traffic is high.
On the other hand, a miniport might call NdisMWanIndicateReceiveCompleteonce for each indication when network traffic is low so that the driver can regain ownership of the memory it allocated for receives promptly.
A ProtocolReceivefunction is re-entrant, and ProtocolReceiveCompletecan run concurrently with ProtocolReceive, particularly in SMP machines.
Requirements
Runs on | Versions | Defined in | Include | Link to |
---|---|---|---|---|
Windows CE OS | 3.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
MiniportInitialize, NdisMIndicateStatus, NdisMWanIndicateReceive, ProtocolReceive, ProtocolReceiveComplete