aboutsummaryrefslogtreecommitdiff
path: root/hw
diff options
context:
space:
mode:
authorPaolo Bonzini <pbonzini@redhat.com>2014-12-10 10:17:36 +0100
committerMichael Tokarev <mjt@tls.msk.ru>2015-01-15 10:44:13 +0300
commit9feb8adeaa850d15b930c30f22c1ed2f2f695172 (patch)
treed35334179830c5f9344ae9af290de2167d73cc61 /hw
parentb629a38a13745d62d44de8ebb00f4e38ec6d8f7e (diff)
vt82c686: avoid out-of-bounds read
superio_ioport_readb can read the 256th element of the array. Coverity reports an out-of-bounds write in superio_ioport_writeb, but it does not show the corresponding out-of-bounds read because it cannot prove that it can happen. Fix the root cause of the problem (zhanghailang's patch instead fixes the logic in superio_ioport_writeb). Signed-off-by: Paolo Bonzini <pbonzini@redhat.com> Reviewed-by: zhanghailiang <zhang.zhanghailiang@huawei.com> Signed-off-by: Michael Tokarev <mjt@tls.msk.ru> Cc: qemu-stable@nongnu.org
Diffstat (limited to 'hw')
-rw-r--r--hw/isa/vt82c686.c2
1 files changed, 1 insertions, 1 deletions
diff --git a/hw/isa/vt82c686.c b/hw/isa/vt82c686.c
index 223b947939..2f53bf8194 100644
--- a/hw/isa/vt82c686.c
+++ b/hw/isa/vt82c686.c
@@ -36,7 +36,7 @@
typedef struct SuperIOConfig
{
- uint8_t config[0xff];
+ uint8_t config[0x100];
uint8_t index;
uint8_t data;
} SuperIOConfig;