NET_EXTENSION_QUERY_INIT function (netadapterpacket.h)

The NET_EXTENSION_QUERY_INIT function initializes a NET_EXTENSION_QUERY structure.

Syntax

void NET_EXTENSION_QUERY_INIT(
  [_Out_] NET_EXTENSION_QUERY *Extension,
  [_In_]  PCWSTR              Name,
  [_In_]  ULONG               Version,
  [_In_]  NET_EXTENSION_TYPE  Type
);

Parameters

[_Out_] Extension

A pointer to a driver-allocated NET_EXTENSION_QUERY structure.

[_In_] Name

The name of the extension to be queried.

[_In_] Version

The version of the extension to be queried.

[_In_] Type

A NET_EXTENSION_TYPE value that specifies the type of extension being queried.

Return value

None

Remarks

After calling this function, pass the initialized NET_EXTENSION_QUERY structure to NetTx(Rx)QueueGetExtension to get the offset to that extension in the packet or fragment descriptor.

To prevent re-querying extension offsets too often, call this function and NetTx(Rx)QueueGetExtension from the EvtNetAdapterCreateTx(Rx)Queue callback function after calling NetTx(Rx)QueueCreate, then store the offset in a queue context space.

For more info about extensions, see Packet descriptors and extensions.

For a code example of querying extension offsets, see Transmit and receive queues.

Requirements

Requirement Value
Minimum supported client Windows 10, version 2004
Target Platform Universal
Minimum UMDF version 2.33
Header netadapterpacket.h (include netadaptercx.h)
IRQL Any level as long as target memory is resident

See also

Packet descriptors and extensions

Transmit and receive queues

NET_EXTENSION_QUERY

NET_EXTENSION_TYPE