Share via


NDIS Protocol Driver Lower-Edge Functions (Windows Embedded CE 6.0)

1/6/2010

NDIS protocol drivers and layered miniport drivers export a set of lower-edge functions that share Protocol as a common prefix.

NDIS-defined driver functions can have any name that the driver writer chooses. For easy debugging, most system-supplied protocols substitute a driver-specific prefix for the Protocol prefix that is used in this documentation.

The following table shows the NDIS driver functions that have the Protocol prefix.

Function Description

ProtocolBindAdapter

This is a required driver function to support Plug and Play.

ProtocolCloseAdapterComplete

Completes the processing of an unbinding operation for which the NdisCloseAdapter function returned NDIS_STATUS_PENDING.

ProtocolOpenAdapterComplete

Completes the processing of a binding operation for which NdisOpenAdapter returned NDIS_STATUS_PENDING.

ProtocolReceive

Required for NDIS protocols that bind to network adapter drivers. This function determines whether a received network packet is of interest to the protocol's clients and, if so, copies the indicated data and can call the NdisTransferData function to retrieve the remaining indicated network packet.

ProtocolReceiveComplete

Completes post-processing of one or more of the preceding receive indications from a network adapter driver.

ProtocolReceivePacket

Processes receive indications that are made by underlying connectionless network adapter drivers that call the NdisMIndicateReceivePacket function either with packet arrays, because the underlying driver supports multipacket receive indications, or with individual packets that have out of bound data (OOB) information associated with them. Loopback can cause a call to ProtocolReceivePacket.

ProtocolRequestComplete

Completes the processing of a protocol-initiated query or set operation for which the NdisRequest function returned NDIS_STATUS_PENDING.

ProtocolResetComplete

Completes the processing of a protocol-initiated reset operation for which the NdisReset function returned NDIS_STATUS_PENDING.

ProtocolSendComplete

Completes the processing of a protocol-initiated send operation that previously was passed to the NdisSend function, which returned NDIS_STATUS_PENDING.

ProtocolStatus

Handles status-change notifications that are raised by an underlying connectionless network adapter driver or by NDIS.

ProtocolStatusComplete

Completes a status-change operation that was initiated when the underlying driver called the NdisMIndicateStatus function.

ProtocolTransferDataComplete

This is a required driver function if the protocol might bind itself to an underlying connectionless network adapter driver that does not indicate full-packet receives with the NdisMIndicateReceivePacket function. ProtocolTransferDataComplete completes the processing of a protocol-initiated transfer-data request for which the NdisTransferData function returned NDIS_STATUS_PENDING.

ProtocolUnbindAdapter

This is a required function to support Plug and Play.

See Also

Concepts

Intermediate Drivers