ProtocolReceiveComplete (Windows Embedded CE 6.0)
1/6/2010
This function is a required driver function in any protocol. ProtocolReceiveComplete completes post-processing of one or more preceding receive indications from a network adapter driver.
Syntax
VOID ProtocolReceiveComplete(
NDIS_HANDLE ProtocolBindingContext
);
Parameters
- ProtocolBindingContext
[in] Specifies the handle to a protocol-allocated context area in which the protocol driver maintains per-binding runtime state. The driver supplied this handle when it called NdisOpenAdapter.
Return Value
None.
Remarks
ProtocolReceiveComplete performs post-processing, such as notifying interested clients of processed data received from a remote node, after one or more calls to the driver's ProtocolReceive function.
When an underlying miniport calls NdisMXXXIndicateReceiveComplete, NDIS calls the ProtocolReceiveComplete function of bound protocols. NDIS always calls ProtocolReceiveComplete after one or more calls to the driver's ProtocolReceive function, regardless of whether any particular packets are accepted by bound protocols.
An underlying miniport need not make calls to NdisMXXXIndicateReceive in one-to-one correspondence with its calls to NdisMXXXIndicateReceiveComplete. ProtocolReceiveComplete is re-entrant because the underlying network adapter driver sometimes must wait to call NdisMXXXIndicateReceiveComplete until no receive operations are in progress.
After ProtocolReceiveComplete is called, the underlying network adapter driver can make another receive indication before ProtocolReceiveComplete returns control, so ProtocolReceiveComplete can execute concurrently with the driver's ProtocolReceive function in SMP machines.
Requirements
Header | ndis.h |
Library | Ndislib.lib |
Windows Embedded CE | Windows CE .NET 4.0 and later |