summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorP J P <ppandit@redhat.com>2015-12-21 15:13:13 +0530
committerMichael Roth <mdroth@linux.vnet.ibm.com>2016-03-15 12:21:11 -0500
commit16a28757355514e49507167c9aaae76964fbc793 (patch)
tree794368b69a261d3e1133074bc86f5284ff3cea25
parent4588b0d856bf197034ec25209c40058a023d30e4 (diff)
downloadqemu-16a28757355514e49507167c9aaae76964fbc793.tar.gz
scsi: initialise info object with appropriate size
While processing controller 'CTRL_GET_INFO' command, the routine 'megasas_ctrl_get_info' overflows the '&info' object size. Use its appropriate size to null initialise it. Reported-by: Qinghao Tang <luodalongde@gmail.com> Signed-off-by: Prasad J Pandit <pjp@fedoraproject.org> Message-Id: <alpine.LFD.2.20.1512211501420.22471@wniryva> Cc: qemu-stable@nongnu.org Signed-off-by: Paolo Bonzini <pbonzini@redhat.com> Signed-off-by: P J P <ppandit@redhat.com> (cherry picked from commit 36fef36b91f7ec0435215860f1458b5342ce2811) Signed-off-by: Michael Roth <mdroth@linux.vnet.ibm.com>
-rw-r--r--hw/scsi/megasas.c2
1 files changed, 1 insertions, 1 deletions
diff --git a/hw/scsi/megasas.c b/hw/scsi/megasas.c
index d7dc6672ec..576f56cbf2 100644
--- a/hw/scsi/megasas.c
+++ b/hw/scsi/megasas.c
@@ -718,7 +718,7 @@ static int megasas_ctrl_get_info(MegasasState *s, MegasasCmd *cmd)
BusChild *kid;
int num_pd_disks = 0;
- memset(&info, 0x0, cmd->iov_size);
+ memset(&info, 0x0, dcmd_size);
if (cmd->iov_size < dcmd_size) {
trace_megasas_dcmd_invalid_xfer_len(cmd->index, cmd->iov_size,
dcmd_size);