IOCTL_EHSTOR_BANDMGMT_REVERT IOCTL (ehstorbandmgmt.h)
This IOCTL_EHSTOR_BANDMGMT_REVERT request is sent to deactivate the security features and band management on a storage device. The request includes revert options and the authentication key.
Major code
Input buffer
The input buffer at Irp->AssociatedIrp.SystemBuffer contains an ACTIVATE_REVERT_PARAMETERS structure. ACTIVATE_REVERT_PARAMETERS is declared in ehstorbandmgmt.h as the following.
typedef struct _ACTIVATE_REVERT_PARAMETERS
{
ULONG StructSize;
ULONG Flags;
ULONG AuthKeyOffset;
} ACTIVATE_REVERT_PARAMETERS;
Following ACTIVATE_REVERT_PARAMETERS in the system buffer is an AUTH_KEY structure. This holds the key data bytes for the authentication key. AUTH_KEY is declared in ehstorbandmgmt.h as the following.
typedef struct _AUTH_KEY
{
ULONG KeySize;
UCHAR Key[ANYSIZE_ARRAY];
} AUTH_KEY;
Input buffer length
The length of an ACTIVATE_REVERT_PARAMETERS structure.
Output buffer
None.
Output buffer length
None.
Status block
One of the following values can be returned in the Status field.
Status Value | Description |
---|---|
STATUS_SUCCESS | Security features on the storage device were deactivated. |
STATUS_INVALID_DEVICE_REQUEST | The storage device does not support band management. |
STATUS_INVALID_BUFFER_SIZE | The input buffer size is invalid. |
STATUS_INVALID_PARAMETER | Information in the input buffer is invalid. |
STATUS_ACCESS_DENIED | The authentication key is invalid. Deactivation is denied. |
STATUS_DEVICE_CONFIGURATION_ERROR | The system cannot configure the device in a supported mode. |
STATUS_IO_DEVICE_ERROR | Communication failed. The storage device might be incompatible with security protocols. |
STATUS_INVALID_DEVICE_STATE | The storage device is not activated. |
Remarks
On successful return from an IOCTL_EHSTOR_BANDMGMT_REVERT request, the storage device will return to an inactive security state and all band management IOCTLs, except for IOCTL_EHSTOR_BANDMGMT_QUERY_CAPABILITIES and IOCTL_EHSTOR_BANDMGMT_ACTIVATE, become unavailable.
Requirements
Requirement | Value |
---|---|
Minimum supported client | Available starting with Windows 8 |
Header | ehstorbandmgmt.h (include EhStorBandMgmt.h) |