SendScsiInquiry function (iscsidsc.h)

The SendScsiInquiry function sends a SCSI INQUIRY command to the specified target.

Syntax

ISDSC_STATUS ISDSC_API SendScsiInquiry(
  [in]      PISCSI_UNIQUE_SESSION_ID UniqueSessionId,
  [in]      ULONGLONG                Lun,
  [in]      UCHAR                    EvpdCmddt,
  [in]      UCHAR                    PageCode,
  [out]     PUCHAR                   ScsiStatus,
  [in, out] PULONG                   ResponseSize,
  [out]     PUCHAR                   ResponseBuffer,
  [in, out] PULONG                   SenseSize,
  [out]     PUCHAR                   SenseBuffer
);

Parameters

[in] UniqueSessionId

A pointer to a ISCSI_UNIQUE_SESSION_ID structure containing the session identifier for the login session specific to the target to which the READ CAPACITY command is sent.

[in] Lun

The logical unit to query for SCSI inquiry data.

[in] EvpdCmddt

The values to assign to the EVP (enable the vital product data) and CmdDt (command support data) bits in the INQUIRY command. Bits 0 (EVP) and 1 (CmdDt) of the EvpdCmddt parameter are inserted into bits 0 and 1, respectively, of the second byte of the Command Descriptor Block (CDB) of the INQUIRY command.

[in] PageCode

The page code. This code is inserted into the third byte of the CDB of the INQUIRY command.

[out] ScsiStatus

A pointer to a location that reports the execution status of the CDB.

[in, out] ResponseSize

A pointer to the location that, on input, specifies the byte-size of ResponseBuffer. On output, this location specifies the number of bytes required to contain the response data for the READ CAPACITY command in the ResponseBuffer.

[out] ResponseBuffer

The buffer that holds the inquiry data.

[in, out] SenseSize

A pointer to a location that, on input, contains the byte-size of SenseBuffer. On output, the location pointed to receives the byte-size required for SenseBuffer to contain the sense data. This value will always be greater than or equal to 18 bytes.

[out] SenseBuffer

The buffer that holds the sense data.

Return value

Returns ERROR_SUCCESS if the operation succeeds and ERROR_INSUFFICIENT_BUFFER if the buffer specified by ResponseBuffer is insufficient to contain the sense data.

If the device returns a SCSI error while processing the REPORT LUNS request, SendScsiReportLuns returns an error code of ISDSC_SCSI_REQUEST_FAILED, and the locations pointed to by ScsiStatus and SenseBuffer contain information detailing the SCSI error.

Otherwise, SendScsiInquiry returns the appropriate Win32 or iSCSI error code on failure.

Requirements

Requirement Value
Minimum supported client Windows Vista [desktop apps only]
Minimum supported server Windows Server 2008 [desktop apps only]
Target Platform Windows
Header iscsidsc.h
Library Iscsidsc.lib
DLL Iscsidsc.dll

See also

ISCSI_UNIQUE_SESSION_ID