STORAGE_OFFLOAD_READ_OUTPUT - NtDoc

Native API online documentation, based on the System Informer (formerly Process Hacker) phnt headers
// ntddstor.h

typedef struct _STORAGE_OFFLOAD_READ_OUTPUT {
  ULONG                 OffloadReadFlags;
  ULONG                 Reserved;
  ULONGLONG             LengthProtected;
  ULONG                 TokenLength;
  STORAGE_OFFLOAD_TOKEN Token;
} STORAGE_OFFLOAD_READ_OUTPUT, *PSTORAGE_OFFLOAD_READ_OUTPUT;
View the official Windows Driver Kit DDI reference
// winioctl.h

typedef struct _STORAGE_OFFLOAD_READ_OUTPUT {
  DWORD                 OffloadReadFlags;
  DWORD                 Reserved;
  DWORDLONG             LengthProtected;
  DWORD                 TokenLength;
  STORAGE_OFFLOAD_TOKEN Token;
} STORAGE_OFFLOAD_READ_OUTPUT, *PSTORAGE_OFFLOAD_READ_OUTPUT;
View the official Win32 API reference

NtDoc

No description available.

Windows Driver Kit DDI reference (ns-ntddstor-_storage_offload_read_output)

_STORAGE_OFFLOAD_READ_OUTPUT structure

Description

The STORAGE_OFFLOAD_READ_OUTPUT structure is the output of an IOCTL_STORAGE_MANAGE_DATA_SET_ATTRIBUTES control code request when the Action member of a DEVICE_DSM_INPUT structure is set to DeviceDsmAction_OffloadRead.

A returned token uniquely identifies the data set ranges requested in DEVICE_DSM_INPUT. In conjunction with DEVICE_DSM_INPUT, the DEVICE_DSM_OFFLOAD_READ_PARAMETERS structure specifies how long the data set ranges identified by the returned token remain available for subsequent writing.

Members

OffloadReadFlags

Not used. Set to 0.

Reserved

Reserved.

LengthProtected

The total length, in bytes, of data read and held by the copy provider for Token.

TokenLength

The length, in bytes, of Token.

Token

A unique identifier returned by the copy provider, marking the data set ranges that are read.

Remarks

The STORAGE_OFFLOAD_READ_OUTPUT structure is returned at the beginning of the system buffer.

The value for Token is generated by the copy provider of the storage device. The data set ranges included when the DEVICE_DSM_INPUT structure was sent in the IOCTL_STORAGE_MANAGE_DATA_SET_ATTRIBUTES control code request are marked by Token. The data set ranges associated with Token are available for subsequent write requests while the duration in the TimeToLive member of DEVICE_DSM_OFFLOAD_READ_PARAMETERS is valid.

See also

DEVICE_DSM_OFFLOAD_READ_PARAMETERS

DEVICE_DSM_INPUT

IOCTL_STORAGE_MANAGE_DATA_SET_ATTRIBUTES


Win32 API reference (ns-winioctl-storage_offload_read_output)

STORAGE_OFFLOAD_READ_OUTPUT structure

Description

Output structure for the DeviceDsmAction_OffloadRead action of the IOCTL_STORAGE_MANAGE_DATA_SET_ATTRIBUTES control code.

Members

OffloadReadFlags

Output flags.

Value Meaning
STORAGE_OFFLOAD_READ_RANGE_TRUNCATED

0x0001
The ranges represented by the token is smaller than the ranges specified in the DEVICE_DATA_SET_RANGE structures passed in the IOCTL_STORAGE_MANAGE_DATA_SET_ATTRIBUTES control code input buffer. In other words the LengthProtected member is less than the sum of all of the LengthInBytes members of the DEVICE_DATA_SET_RANGE structures passed.

Reserved

Reserved.

LengthProtected

The total length of the snapshot represented by the token.

TokenLength

Length of the token in bytes.

Token

A STORAGE_OFFLOAD_TOKEN containing the token created.

See also

DEVICE_DSM_OFFLOAD_READ_PARAMETERS

DEVICE_MANAGE_DATA_SET_ATTRIBUTES_OUTPUT

Device Management Structures

IOCTL_STORAGE_MANAGE_DATA_SET_ATTRIBUTES

STORAGE_OFFLOAD_TOKEN