TESTS: fix ExtendedCopy.ValidTgtDescr for SPC-4
With SPC-4, the 0xE4 descriptor LU ID TYPE field should be ignored, and the NUL bit is obsolete. Update the ValidTgtDescr accordingly. Signed-off-by: David Disseldorp <ddiss@suse.de>
This commit is contained in:
@@ -31,6 +31,8 @@ void
|
||||
test_extendedcopy_validate_tgt_descr(void)
|
||||
{
|
||||
int tgt_desc_len = 0, seg_desc_len = 0, offset = XCOPY_DESC_OFFSET;
|
||||
int ret;
|
||||
struct scsi_inquiry_standard *std_inq;
|
||||
struct iscsi_data data;
|
||||
unsigned char *xcopybuf;
|
||||
|
||||
@@ -39,6 +41,12 @@ test_extendedcopy_validate_tgt_descr(void)
|
||||
|
||||
CHECK_FOR_DATALOSS;
|
||||
|
||||
ret = inquiry(sd, &task, 0, 0, 260,
|
||||
EXPECT_STATUS_GOOD);
|
||||
CU_ASSERT_EQUAL(ret, 0);
|
||||
std_inq = scsi_datain_unmarshall(task);
|
||||
CU_ASSERT_NOT_EQUAL(std_inq, NULL);
|
||||
|
||||
data.size = XCOPY_DESC_OFFSET +
|
||||
get_desc_len(IDENT_DESCR_TGT_DESCR) +
|
||||
get_desc_len(BLK_TO_BLK_SEG_DESCR);
|
||||
@@ -57,8 +65,19 @@ test_extendedcopy_validate_tgt_descr(void)
|
||||
populate_param_header(xcopybuf, 1, 0, 0, 0,
|
||||
tgt_desc_len, seg_desc_len, 0);
|
||||
|
||||
EXTENDEDCOPY(sd, &data, EXPECT_INVALID_FIELD_IN_CDB);
|
||||
if (std_inq->version >= 6) {
|
||||
/* SPC-4 - LU ID should be ignored "*/
|
||||
EXTENDEDCOPY(sd, &data, EXPECT_STATUS_GOOD);
|
||||
} else {
|
||||
/* SPC-3 - LU ID is reserved */
|
||||
EXTENDEDCOPY(sd, &data, EXPECT_INVALID_FIELD_IN_CDB);
|
||||
}
|
||||
|
||||
if (std_inq->version >= 6) {
|
||||
/* NUL bit is obsolete in SPC-4 */
|
||||
CU_PASS("[SKIPPED] Target is SPC-4+. Skipping NUL bit test");
|
||||
return;
|
||||
}
|
||||
logging(LOG_VERBOSE, "Test NUL bit in target descriptor");
|
||||
/* NUL bit */
|
||||
memset(xcopybuf, 0, data.size);
|
||||
|
||||
Reference in New Issue
Block a user