Share via


ProtocolStatusComplete (Windows Embedded CE 6.0)

1/6/2010

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

Syntax

VOID ProtocolStatusComplete(
  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

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.

Requirements

Header ndis.h
Library Ndislib.lib
Windows Embedded CE Windows CE .NET 4.0 and later

See Also

Reference

NDIS Lower-Edge Functions
MiniportReset
NdisMIndicateStatus
NdisMIndicateStatusComplete
NdisOpenAdapter
NdisReset
ProtocolReceive
ProtocolResetComplete
ProtocolStatus