Compartilhar via


NdisSetPacketFlags

This function sets caller-determined and medium-specific information in the flags of a given packet descriptor.

VOID NdisSetPacketFlags(
IN PNDIS_PACKET Packet, 
IN UINT Flags );

Parameters

  • Packet
    Pointer to the packet descriptor in which the flags should be set.

  • Flags
    Specifies the value to be set in the flags, which are in the private portion of the packet descriptor reserved for use by NDIS.

    For protocols, the format of this value is specific to the medium that the underlying driver selected when the protocol called the NdisOpenAdapter function to set up the binding.

Remarks

Setting the flags in a packet descriptor allows a protocol driver to pass information, usually about a send request, that is not included in the packet data.

A protocol driver usually calls this function to set the flags in packets sent on any medium that transmits data in an expedited manner. Some types of media include flag information in the packet header contained in buffers chained to the send packet. When a protocol driver is bound to an underlying driver for these types of media, a call to this function is unnecessary.

When a bound protocol calls this function, an underlying driver's MiniportSendPackets function can read these flags only by calling the NdisGetPacketFlags function. For underlying drivers that have MiniportSend functions, a call to NdisGetPacketFlags is unnecessary because the flags are passed as an input parameter to the MiniportSend function.

All packet descriptors allocated with NdisAllocatePacket are 0-initialized, including the flags. If the value returned by NdisGetPacketFlags is 0, the underlying driver can assume that the packet has no protocol-set flag information.

However, protocols can supply far more media-specific information, such as the packet priority, in the out-of-band data block associated with each packet descriptor than a call to this function with a single packet allows.

A driver that calls this function runs at IRQL <= DISPATCH_LEVEL.

Requirements

Runs on Versions Defined in Include Link to
Windows CE OS 2.0 and later Ndis.h    

Note   This API is part of the complete Windows CE OS package as provided by Microsoft. The functionality of a particular platform is determined by the original equipment manufacturer (OEM) and some devices may not support this API.

See Also

NDIS_SET_PACKET_MEDIA_SPECIFIC_INFO, NdisAllocatePacket, NdisOpenAdapter, NdisSend

 Last updated on Tuesday, July 13, 2004

© 1992-2000 Microsoft Corporation. All rights reserved.