Share via


Receiving Data in an Intermediate Driver with a Connectionless Lower Edge (NDIS 5.1)

Note   NDIS 5. x has been deprecated and is superseded by NDIS 6. x. For new NDIS driver development, see Network Drivers Starting with Windows Vista. For information about porting NDIS 5. x drivers to NDIS 6. x, see Porting NDIS 5.x Drivers to NDIS 6.0.

Underlying connectionless miniport drivers can indicate packets in two ways:

  • A miniport driver calls the nonmedia-specific NdisMIndicateReceivePacket, passing a pointer to an array of pointers to one or more packet descriptors, relinquishing ownership of the indicated packet resources to higher level drivers. When the higher level drivers have consumed the data, they return the packet descriptors (and the resources they specify) to the NIC driver.

  • A miniport driver calls a media-specific NdisMXxxIndicateReceive function, passing a pointer to a lookahead buffer and the total size of the packet.

An intermediate driver with a connectionless lower edge must have ProtocolReceiveand ProtocolReceivePacketfunctions.

Because the underlying miniport driver also indicates per-packet information and/or OOB data, the intermediate driver must retrieve this information in ProtocolReceiveby calling NdisGetReceivedPacketand NDIS_GET_ORIGINAL_PACKET.

For more information about receiving data in an intermediate driver with a connectionless lower edge, see Receiving Data in a Connectionless Protocol Driver.

 

 

Send comments about this topic to Microsoft