This function copies per-packet information from a packet returned up by a lower miniport driver into a new packet that is to be returned to an upper-level driver.
VOID NdisIMCopySendCompletePerPacketInfo( PNDIS_PACKET DstPacket, PNDIS_PACKET SrcPacket );
[in] Pointer to the destination packet descriptor in which per-packet information is to be copied.
[in] Pointer to the source packet descriptor from which per-packet information is copied.
When an intermediate driver handles the completion of a send request from a lower miniport driver, that intermediate driver calls NdisIMCopySendCompletePerPacketInfo to copy per-packet information. The intermediate driver copies the per-packet information from a packet that was returned by the lower miniport driver into a new packet that the intermediate driver returns to an upper-level driver. The intermediate driver calls NdisIMCopySendCompletePerPacketInfo for each packet returned through the stack unless the intermediate driver must modify a packet's per-packet information.
Per-packet information is contained in an NDIS_PACKET_EXTENSION structure and includes, for example, checksum information, IP Security information, and 802.1p priority information.
If an intermediate driver must modify a packet's per-packet information, that intermediate driver can use either of the following macros to access the per-packet information:
- NDIS_PER_PACKET_INFO_FROM_PACKET accesses a specific type of per-packet information in a packet. Use this macro to access only a single type of per-packet information for a packet.
- NDIS_PACKET_EXTENSION_FROM_PACKET accesses all of the per-packet information in a packet. Use this macro to access more than one type of per-packet information for a packet.
To copy a range of data from one packet to another, use the NdisCopyFromPacketToPacket function.
OS Versions: Windows CE .NET 4.0 and later.
Last updated on Tuesday, May 18, 2004
© 1992-2003 Microsoft Corporation. All rights reserved.