NdisMWanSendComplete (Compact 2013)

3/26/2014

This function returns the packet and final status of a completed send request for which the miniport previously returned NDIS_STATUS_PENDING.

Syntax

VOID NdisMWanSendComplete(
  NDIS_HANDLE MiniportAdapterHandle,
  PNDIS_WAN_PACKET Packet,
  NDIS_STATUS Status
);

Parameters

  • Packet
    [in] Points to the protocol-supplied packet originally passed in to the MiniportWanSend function.
  • Status
    [in] Specifies the NDIS_STATUS_XXX code describing the outcome of the completed send operation, either NDIS_STATUS_SUCCESS or a miniport-determined error status value.

Return Value

None.

Remarks

Whenever the MiniportWanSend function returns NDIS_STATUS_PENDING for an incoming packet, the miniport must eventually call NdisMWanSendComplete with a pointer to that packet. When MiniportWanSend returns any NDIS_STATUS_XXX except NDIS_STATUS_PENDING for a given packet, that packet is considered completed as soon as MiniportWanSend returns control.

Calling NdisMWanSendComplete does not necessarily imply that the packet has been transmitted over the network, although usually it has before a miniport calls this function. However, a miniport might call NdisMWanSendComplete as soon as it has successfully programmed its NIC for the transmit operation, particularly if its NIC is a so-called intelligent network card.

NdisMWanSendComplete forwards the completed packet to the ProtocolSendComplete function of the driver that initiated the original send operation. Then, the protocol regains ownership of the packet and all buffers that it allocated for the send.

Requirements

Header

ndis.h

Library

ndis.dll

See Also

Reference

NDIS 5.x Legacy Functions
MiniportInitialize
MiniportWanSend
ProtocolSendComplete
NdisSend