NetRxQueueCreate function (netrxqueue.h)

Creates a net receive queue object.

Syntax

NTSTATUS NetRxQueueCreate(
  [_Inout_]  NETRXQUEUE_INIT         *NetRxQueueInit,
  [_In_opt_] WDF_OBJECT_ATTRIBUTES   *RxQueueAttributes,
  [_In_]     NET_PACKET_QUEUE_CONFIG *Configuration,
  [_Out_]    NETPACKETQUEUE          *PacketQueue
);

Parameters

[_Inout_] NetRxQueueInit

A pointer to the NETRXQUEUE_INIT structure that the client driver received in its EVT_NET_ADAPTER_CREATE_RXQUEUE callback function.

[_In_opt_] RxQueueAttributes

A pointer to caller-allocated and initialized WDF_OBJECT_ATTRIBUTES structure. This parameter is optional and can be WDF_NO_OBJECT_ATTRIBUTES. However, if the client driver supplies this parameter, the ParentObject field must be NULL.

[_In_] Configuration

A pointer to a caller-allocated NET_PACKET_QUEUE_CONFIG structure.

[_Out_] PacketQueue

A pointer to a location that receives a handle to the new net receive queue object.

Return value

This function returns STATUS_SUCCESS if the operation succeeds. Otherwise, this function may return an appropriate NTSTATUS error code.

Remarks

The client calls NetRxQueueCreate from within its EVT_NET_ADAPTER_CREATE_RXQUEUE event callback function. For info on assigning context space to the new object, see Framework Object Context Space.

The NETPACKETQUEUE object is a standard WDF object. The framework manages its deletion, which occurs when the parent NETADAPTER object is deleted.

Requirements

Requirement Value
Target Platform Universal
Minimum KMDF version 1.27
Minimum UMDF version 2.33
Header netrxqueue.h (include netadaptercx.h)
Library NetAdapterCxStub.lib
IRQL PASSIVE_LEVEL