|This is retired content. This content is outdated and is no longer being maintained. It is provided as a courtesy for individuals who are still using these technologies. This content may contain URLs that were valid when originally published, but now link to sites or pages that no longer exist.|
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 );
For protocols, the format of this value is specific to the medium that the underlying driver selected when the protocol called the NdisOpenAdapterfunction to set up the binding.
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 MiniportSendPacketsfunction can read these flags only by calling the NdisGetPacketFlagsfunction. For underlying drivers that have MiniportSendfunctions, a call to NdisGetPacketFlagsis unnecessary because the flags are passed as an input parameter to the MiniportSendfunction.
All packet descriptors allocated with NdisAllocatePacketare 0-initialized, including the flags. If the value returned by NdisGetPacketFlagsis 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.
|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.
Last updated on Tuesday, July 13, 2004