]> git.ipfire.org Git - thirdparty/qemu.git/commitdiff
scsi: megasas: use appropriate property buffer size
authorPrasad J Pandit <pjp@fedoraproject.org>
Wed, 25 May 2016 10:31:29 +0000 (16:01 +0530)
committerMichael Roth <mdroth@linux.vnet.ibm.com>
Tue, 9 Aug 2016 19:28:56 +0000 (14:28 -0500)
When setting MegaRAID SAS controller properties via MegaRAID
Firmware Interface(MFI) commands, a user supplied size parameter
is used to set property value. Use appropriate size value to avoid
OOB access issues.

Reported-by: Li Qiang <liqiang6-s@360.cn>
Signed-off-by: Prasad J Pandit <pjp@fedoraproject.org>
Message-Id: <1464172291-2856-2-git-send-email-ppandit@redhat.com>
Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>
(cherry picked from commit 1b85898025c4cd95dce673d15e67e60e98e91731)
Signed-off-by: Michael Roth <mdroth@linux.vnet.ibm.com>
hw/scsi/megasas.c

index a63a581550a328d0326ddee4f7fe1c4ffdecc194..dcbd3e1f240b6c83a8bc349ac7b79cc63db8a38e 100644 (file)
@@ -1446,7 +1446,7 @@ static int megasas_dcmd_set_properties(MegasasState *s, MegasasCmd *cmd)
                                             dcmd_size);
         return MFI_STAT_INVALID_PARAMETER;
     }
-    dma_buf_write((uint8_t *)&info, cmd->iov_size, &cmd->qsg);
+    dma_buf_write((uint8_t *)&info, dcmd_size, &cmd->qsg);
     trace_megasas_dcmd_unsupported(cmd->index, cmd->iov_size);
     return MFI_STAT_OK;
 }