RxNewMapUserBuffer function

RxNewMapUserBuffer returns the user buffer address used for low I/O.

Syntax

PVOID RxNewMapUserBuffer(
  _In_ PRX_CONTEXT RxContext
);

Parameters

RxContext [in]
A pointer to the RX_CONTEXT structure for this request.

Return value

RxNewMapUserBuffer returns a mapped address pointer on success or NULL on failure.

Remarks

If an MDL exists, then the assumption is that the MDL describes the user buffer, and the system address for the MDL is returned by RxNewMapUserBuffer. Otherwise, the user buffer is returned directly by RxNewMapUserBuffer.

The RxNewMapUserBuffer routine checks if the CurrentIrp->MdlAddress member of the RxContext variable is NULL and returns the CurrentIrp->UserBuffer member of the RxContext variable when this is the case. If the CurrentIrp->MdlAddress member is not NULL, then RxNewMapUserBuffer will call MmGetSystemAddressForMdlSafe to return the MDL from the IRP.

Note that the RxNewMapUserBuffer routine is only available on Windows XP and Windows 2000.

Requirements

Target platform

Desktop

Version

The RxNewMapUserBuffer routine is only available on Windows XP and Windows 2000.

Header

Rxprocs.h (include Rxcontx.h or Rxprocs.h)

IRQL

<= APC_LEVEL

See also

MmGetSystemAddressForMdlSafe

RxLowIoCompletion

RxLowIoGetBufferAddress

RxMapSystemBuffer

RX_CONTEXT