IOCTL_EHSTOR_DRIVER_REPORT_CAPABILITIES control code

This IOCTL is used to inform the enhanced storage (EHSTOR) class driver of the silo driver's capabilities. The silo driver sends this IOCTL with a SILO_DRIVER_CAPABILITES structure that indicates whether authentication and banding are supported along with a list of EHSTOR IOCTLs it will handle.

Input Parameters

The input buffer at Irp->AssociatedIrp.SystemBuffer must contain a structure of type SILO_DRIVER_CAPABILITES. This structure is followed immediately by a list of which redirected IOCTLs the silo driver will handle.

Output Parameters

None.

I/O Status Block

One of the following values can be returned in the Status field.

Status ValueDescription
STATUS_SUCCESSThe silo driver's capabilities were registered with the EHSTOR class driver.
STATUS_INVALID_BUFFER_SIZEThe input buffer length supplied is of incorrect size.
STATUS_INVALID_PARAMETERA capability parameter is incorrect.
STATUS_INSUFFICIENT_RESOURCESThe IOCTL redirection list cannot be copied.
STATUS_NOT_SUPPORTEDThe sending device is not a silo device.

 

Remarks

This IOCTL is used by the Trusted Computing Group (TCG) standard authentication silo driver in Windows 8. On device initialization, the TCG silo driver will notify the EHSTOR class driver (EhStorClass.sys) of its capabilities by sending a IOCTL_EHSTOR_DRIVER_REPORT_CAPABILITIES request with a SILO_DRIVER_CAPABILITIES structure.

Silo device objects exist outside the storage device stack. Any EHSTOR request intended for a silo driver must be explicitly forwarded to it. This is the case for all band management IOCTLs. Band management requests are made on a file object representing a physical drive. These requests are sent down the storage device stack. If the silo driver has registered support for the IOCTL, the EHSTOR class driver will redirect the request to the silo driver.

IOCTL requests supported by a silo driver are included in an array following SILO_DRIVER_CAPABILITIES in the system buffer. The size of the information in the system buffer should be specified as sizeof(SILO_DRIVER_CAPABILITIES) + (sizeof(ULONG) * RedirectedIoctlListCount).

A vendor supplied non-TCG authentication silo driver must notify the EHSTOR class driver of its capabilities using this IOCTL.

Requirements

Version

Available starting with Windows 8

Header

EhStorIoctl.h (include EhStorIoctl.h)

See also

SILO_DRIVER_CAPABILITIES

 

 

Send comments about this topic to Microsoft

Show:
© 2014 Microsoft