Hardware Dev Center

IOCTL_EHSTOR_BANDMGMT_ENUMERATE_BANDS control code

This IOCTL_EHSTOR_BANDMGMT_ENUMERATE_BANDS request is sent to retrieve the list of bands for a storage device under band management. Banding information is returned in a table of band entries that includes band location and security properties.

Input Parameters

The buffer at Irp->AssociatedIrp.SystemBuffer must contain an ENUMERATE_BANDS_PARAMETERS structure. Parameters.DeviceIoControl.InputBufferLength indicates the size, in bytes, of the buffer, which must be at least sizeof (ENUMERATE_BANDS_PARAMETERS).

Output Parameters

The buffer at Irp->AssociatedIrp.SystemBuffer contains a BAND_TABLE structure followed by BandTableEntryCount band entries.

I/O Status Block

The Information field contains the number of bytes returned in the output buffer. One of the following values can be returned in the Status field.

Status ValueDescription
STATUS_SUCCESSSecurity features on the storage device were deactivated.
STATUS_INVALID_DEVICE_REQUESTThe storage device does not support band management.
STATUS_INVALID_BUFFER_SIZEThe input buffer size is invalid.
STATUS_INVALID_PARAMETERInformation in the input buffer is invalid.
STATUS_NOT_FOUNDNo bands are configured for the enumeration parameters provided.
STATUS_BUFFER_OVERFLOWA buffer is not provided or its size set to zero. The required size is returned in the Information field.
STATUS_IO_DEVICE_ERRORCommunication failed. The storage device might be incompatible with security protocols.
STATUS_BUFFER_TOO_SMALLThe output buffer supplied is not large enough to hold the output data returned.

 

Remarks

A driver or application can query for the necessary output buffer size by setting the output buffer for the request to NULL and the output size to 0. The IOCTL_EHSTOR_BANDMGMT_ENUMERATE_BANDS request will return with the Status field of the IoStatus block set to STATUS_BUFFER_OVERFLOW and the Information field will contain the required buffer size.

Requirements

Version

Available starting with Windows 8.

Header

EhStorBandMgmt.h (include EhStorBandMgmt.h)

See also

BAND_TABLE
ENUMERATE_BANDS_PARAMETERS

 

 

Send comments about this topic to Microsoft

Show:
© 2015 Microsoft