@samitouri / QOSamiQemu / commits / 99f2428497

hw/nvme: report error for oversized 'serial' parameter

The 'serial' accepted by the NVME device is at most 20 characters long. An over-sized user supplied value should be reported rather than silently truncated. Signed-off-by: Daniel P. Berrangé <berrange@redhat.com> Signed-off-by: Klaus Jensen <k.jensen@samsung.com>

Daniel P. Berrangé committed Mar 6, 2026 at 16:57 UTC 99f24284978404b0ee68062feef6806319e26d70
1 file changed +5
hw/nvme/ctrl.c
+5
@@ -8602,6 +8602,11 @@ static bool nvme_check_params(NvmeCtrl *n, Error **errp)
8602 error_setg(errp, "serial property not set");
8603 return false;
8604 }
8605 + if (strlen(params->serial) > NVME_ID_CTRL_SN_MAX_LEN) {
8606 + error_setg(errp, "'serial' parameter '%s' can be at most '%d' characters",
8607 + params->serial, NVME_ID_CTRL_SN_MAX_LEN);
8608 + return false;
8609 + }
8610
8611 if (params->mqes < 1) {
8612 error_setg(errp, "mqes property cannot be less than 1");