scsi: Include null terminator in Unit Serial Number VPD Page

According to the scsi standard, all ASCII data fields "may be
terminated with one or more ASCII null (00h) characters"
[7.6.10, 4.4.1]. Windows SCSI Compliance tests expect a null terminator
there, so let's include it.

Change-Id: I18fa35295233a163cea711a5c4ff8e3d3e80c4f1
Signed-off-by: Dariusz Stojaczyk <dariuszx.stojaczyk@intel.com>
This commit is contained in:
Dariusz Stojaczyk 2017-04-18 19:13:21 +02:00 committed by Jim Harris
parent c2c995c5b0
commit 154323ab51

View File

@ -222,12 +222,13 @@ spdk_bdev_scsi_inquiry(struct spdk_bdev *bdev, struct spdk_scsi_task *task,
hlen = 4;
/* PRODUCT SERIAL NUMBER */
len = strlen(bdev->name);
len = strlen(bdev->name) + 1;
if (len > MAX_SERIAL_STRING) {
len = MAX_SERIAL_STRING;
}
spdk_strcpy_pad(vpage->params, bdev->name, len, ' ');
memcpy(vpage->params, bdev->name, len - 1);
vpage->params[len - 1] = 0;
/* PAGE LENGTH */
to_be16(vpage->alloc_len, len);