WDF_REQUEST_PARAMETERS structure (wdfrequest.h)

[Applies to KMDF and UMDF]

The WDF_REQUEST_PARAMETERS structure receives parameters that are associated with an I/O request.

Syntax

typedef struct _WDF_REQUEST_PARAMETERS {
  USHORT           Size;
  UCHAR            MinorFunction;
  WDF_REQUEST_TYPE Type;
  union {
    struct {
      PIO_SECURITY_CONTEXT     SecurityContext;
      ULONG                    Options;
      USHORT POINTER_ALIGNMENT FileAttributes;
      USHORT                   ShareAccess;
      ULONG POINTER_ALIGNMENT  EaLength;
    } Create;
    struct {
      size_t                  Length;
      ULONG POINTER_ALIGNMENT Key;
      LONGLONG                DeviceOffset;
    } Read;
    struct {
      size_t                  Length;
      ULONG POINTER_ALIGNMENT Key;
      LONGLONG                DeviceOffset;
    } Write;
    struct {
      size_t                   OutputBufferLength;
      size_t POINTER_ALIGNMENT InputBufferLength;
      ULONG POINTER_ALIGNMENT  IoControlCode;
      PVOID                    Type3InputBuffer;
    } DeviceIoControl;
    struct {
      PVOID                   Arg1;
      PVOID                   Arg2;
      ULONG POINTER_ALIGNMENT IoControlCode;
      PVOID                   Arg4;
    } Others;
  } Parameters;
} WDF_REQUEST_PARAMETERS, *PWDF_REQUEST_PARAMETERS;

Members

Size

The size, in bytes, of this structure.

MinorFunction

The IRP minor function code, if any, that is associated with the I/O request. Some major function codes have associated minor function codes.

Type

A WDF_REQUEST_TYPE-typed value that identifies the I/O request's type.

Parameters

Parameters that are unique for each IRP major function code. This member contains a subset of the Parameters member of the IO_STACK_LOCATION structure.

Parameters.Create

Parameters for IRP_MJ_CREATE.

Parameters.Create.SecurityContext

Parameters.Create.Options

Parameters.Create.FileAttributes

Parameters.Create.ShareAccess

Parameters.Create.EaLength

Parameters.Read

Parameters for IRP_MJ_READ.

Parameters.Read.Length

Parameters.Read.Key

Parameters.Read.DeviceOffset

Parameters.Write

Parameters for IRP_MJ_WRITE.

Parameters.Write.Length

Parameters.Write.Key

Parameters.Write.DeviceOffset

Parameters.DeviceIoControl

Parameters for IRP_MJ_DEVICE_CONTROL and IRP_MJ_INTERNAL_DEVICE_CONTROL.

Parameters.DeviceIoControl.OutputBufferLength

Parameters.DeviceIoControl.InputBufferLength

Parameters.DeviceIoControl.IoControlCode

Parameters.DeviceIoControl.Type3InputBuffer

Parameters.Others

Use of this member is defined by the driver stack.

Parameters.Others.Arg1

Parameters.Others.Arg2

Parameters.Others.IoControlCode

Parameters.Others.Arg4

Remarks

The WDF_REQUEST_PARAMETERS structure is used as input to WdfRequestGetParameters. Drivers must call WDF_REQUEST_PARAMETERS_INIT to initialize this structure before they call WdfRequestGetParameters.

Requirements

Requirement Value
Minimum KMDF version 1.0
Minimum UMDF version 2.0
Header wdfrequest.h (include Wdf.h)

See also

IO_STACK_LOCATION

WDF_REQUEST_PARAMETERS_INIT

WdfRequestGetParameters