2.2.4.8 SVHDX_TUNNEL_SCSI_RESPONSE Structure

The SVHDX_TUNNEL_SCSI_RESPONSE packet is sent by the server in response to the operation RSVD_TUNNEL_SCSI_OPERATION.


0


1


2


3


4


5


6


7


8


9

1
0


1


2


3


4


5


6


7


8


9

2
0


1


2


3


4


5


6


7


8


9

3
0


1

Length

A

SrbStatus

ScsiStatus

CDBLength

SenseInfoExLength

DataIn

Reserved

SrbFlags

DataTransferLength

SenseDataEx

...

...

...

...

DataBuffer (variable)

...

Length (2 bytes): Specifies the size, in bytes, of the SVHDX_TUNNEL_SCSI_RESPONSE structure excluding the DataBuffer field. This field MUST be set to 36.

A - SenseInfoAutoGenerated (1 bit): A 1-bit field used to indicate that sense data was automatically generated by the virtual SCSI disk.

SrbStatus (7 bits): A 7-bit field indicating the status. This field MUST contain one of the values in section 2.2.5.

ScsiStatus (1 byte): An 8-bit field used to communicate the SCSI status that was returned by the target device.

CDBLength (1 byte): The length, in bytes, of the SCSI CDB.

SenseInfoExLength (1 byte): The length, in bytes, of the sense data in the SenseDataEx field.

DataIn (1 byte): This field indicates the SCSI CDB transfer type and MUST be set to one of the following values:

Value

Meaning

0x00

Indicates that the client requested data from the server

0x01

Indicates that the client sent data to the server

0x02

Indicates that the client neither sent nor requested an additional data buffer

Reserved (1 byte): This field MUST be set to zero, and MUST be ignored on receipt.

SrbFlags (4 bytes): Special flags to indicate options of the SCSI response. This field MUST contain zero or more of the following values:

Name

Meaning

SRB_FLAGS_DATA_IN

0x00000040

The client sent data to the server.

SRB_FLAGS_DATA_OUT

0x00000080

The server is sending data to the client.

DataTransferLength (4 bytes): The length, in bytes, of the additional data placed in the DataBuffer field.

SenseDataEx (20 bytes): A buffer that contains the sense data.

DataBuffer (variable): A variable-length buffer that contains the additional buffer, as described by the DataTransferLength field.

Show: