NdisMWanIndicateReceiveComplete (Windows CE 5.0)
This function notifies NDISWAN that one or more receives have been completed for an established link so that NDISWAN can notify the appropriate bound protocols.
VOID NdisMWanIndicateReceiveComplete( NDIS_HANDLEMiniportAdapterHandle, NDIS_HANDLENdisLinkContext);
Parameters
- MiniportAdapterHandle
[in] Specifies the handle originally input to MiniportInitialize. - NdisLinkContext
[in] Specifies the handle supplied by NDISWAN in the NDIS_MAC_LINE_UP structure at the miniport's initial call to NdisMIndicateStatus for this link.
Return Values
None.
Remarks
After any WAN receive indication, a miniport must eventually call NdisMWanIndicateReceiveComplete.
NdisMWanIndicateReceiveComplete indicates the completion of a transfer operation for a receive. In addition, it notifies any bound protocol that has already consumed the initial indication that it may begin post-processing the received data.
When a miniport calls NdisMWanIndicateReceiveComplete, NDISWAN calls the ProtocolReceiveComplete function of bound protocol drivers. ProtocolReceiveComplete functions need not operate under the severe time constraints of the corresponding ProtocolReceive functions.
A WAN miniport need not call NdisMWanIndicateReceiveComplete in one-to-one correspondence with its calls to NdisMWanIndicateReceive. That is, a NIC 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 NIC. Such a driver can call NdisMWanIndicateReceiveComplete after several calls to NdisMWanIndicateReceive have 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 NdisMWanIndicateReceiveComplete once for every ten receive indications when network traffic is high.
On the other hand, a miniport might call NdisMWanIndicateReceiveComplete once for each indication when network traffic is low so that the driver can regain ownership of the memory it allocated for receives promptly.
A ProtocolReceive function is re-entrant, and ProtocolReceiveComplete can run concurrently with ProtocolReceive, particularly in SMP machines.
Requirements
OS Versions: Windows CE .NET 4.0 and later.
Header: Ndis.h.
Link Library: Ndis.dll.
See Also
MiniportInitialize | NDIS_MAC_LINE_UP | NdisMIndicateStatus | ProtocolReceiveComplete | ProtocolReceive | NdisMWanIndicateReceive
Send Feedback on this topic to the authors