RtNalConfigureQueue

RtNalConfigureQueue configures a queue reserved by RtNalAcquireQueue to be able to send or receive data.

Syntax

BOOL RtNalConfigureQueue(
	RTNAL_QUEUE_HANDLE queueHandle,
	PVOID appContext,
	PRTNAL_QUEUE_CAPABILITIES pCapabilities
);

Parameters

queueHandle

Network queue handle returned by RtNalAcquireQueue.

appContext

An application context pointer. This context is used by application callbacks passed in the pCapabilities parameter. This parameter cannot be NULL.

pCapabilities

A pointer to RTNAL_QUEUE_CAPABILITIES structure containing the application functions called back by the NAL layer or the device driver. This parameter cannot be NULL.

Return Value

Returns TRUE if the call succeeds. Otherwise it returns FALSE. Call GetLastError to obtain an error code. The possible error codes are listed below:

Error Code Meaning
ERROR_INVALID_PARAMETER queueHandle or a pointer argument is NULL.
ERROR_DEVICE_FEATURE_NOT_SUPPORTED

Indicates one of the following scenarios:

The capabilities include a receive callback, but the NIC driver dos not export RtndAttachToReceiveQueue, or RtndDetachReceiveQueue.

The queue uses transmit notifications but the NIC driver does not export RtndAttachToTransmitQueue, RtndDetachTransmitQueue, or RtndServiceTransmitQueue.

ERROR_INVALID_HANDLE queueHandle is invalid. This might be occur if the queue was released in another thread or on process exit, as if by RtssKill.
ERROR_NOT_READY RtNalInit has not completed successfully.

Requirements

Minimum Supported Version (NAL) RTX64 Network Abstraction Layer 2.0
Minimum Supported Version (RTX64) RTX64 3.4
Header rtnapi.h, RtNalApi.h
Library RtNal.lib

See Also: