This function is a required driver function that completes a status-change operation initiated when the underlying driver called NdisMIndicateStatus.

VOID ProtocolStatusComplete(
  NDIS_HANDLE ProtocolBindingContext


  • 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 Values



ProtocolStatusComplete performs whatever post-processing is necessary after one or more calls to the driver's ProtocolStatus function. A call to ProtocolStatusComplete indicates that the protocol can resume normal operations on the binding after taking into account the preceding status changes indicated to its Protocol(Co)Status function. For example, if the protocol previously called NdisReset and it returned NDIS_STATUS_PENDING, both ProtocolResetComplete and ProtocolStatusComplete are called when the protocol-initiated reset operation is begun and completed.

The underlying miniport's call to NdisMIndicateStatusComplete causes NDIS to call the ProtocolStatusComplete function. Interrupts are enabled on the underlying network adapter when this call occurs. Consequently, the ProtocolReceivePacket or ProtocolReceive functions can be called to process receive indications while ProtocolStatusComplete is running in SMP machines. In some circumstances, the underlying driver can call NdisMIndicateStatus, thereby causing a call to the ProtocolStatus function while ProtocolStatusComplete is running.


OS Versions: Windows CE .NET 4.0 and later.
Header: Ndis.h.
Link Library: Ndislib.lib.

See Also

MiniportReset | NdisMIndicateStatus | NdisMIndicateStatusComplete | NdisOpenAdapter | NdisReset | ProtocolReceive | ProtocolResetComplete | ProtocolStatus

 Last updated on Tuesday, May 18, 2004

© 1992-2003 Microsoft Corporation. All rights reserved.