IOCTL_SCSI_GET_CAPABILITIES IOCTL (ntddscsi.h)
Returns the capabilities and limitations of the underlying SCSI HBA. The most important information is returned in the MaximumTransferLength and AlignmentMask members. Class drivers and users of IOCTL_SCSI_PASS_THROUGH and IOCTL_SCSI_PASS_THROUGH_DIRECT are required to honor these limitations.
Only legacy drivers can issue this request. The request fails if it is sent to a PDO created by the port driver.
To get SCSI capabilities data, a Plug and Play driver must issue an IOCTL_STORAGE_QUERY_PROPERTY request for STORAGE_ADAPTER_DESCRIPTOR data to the PDO for each device to which the driver has been added (that is, each device for which the driver has received an AddDevice call). A legacy driver should forward this request to the port driver. This request fails if it is sent to the FDO for an adapter.
Major code
Input buffer
None.
Input buffer length
None.
Output buffer
Updated IO_SCSI_CAPABILITIES information is returned to the buffer at Irp->AssociatedIrp.SystemBuffer.
Output buffer length
Parameters.DeviceIoControl.OutputBufferLength in the I/O stack location indicates the size, in bytes, of the buffer, which must be >= sizeof(IO_SCSI_CAPABILITIES).
Status block
The Information field contains the number of bytes returned in the output buffer. The Status field indicates the results of the operation.
Requirements
Requirement | Value |
---|---|
Header | ntddscsi.h (include Ntddscsi.h) |