From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from eggs.gnu.org ([2001:4830:134:3::10]:58053) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1eyJym-0002b7-KU for qemu-devel@nongnu.org; Tue, 20 Mar 2018 12:19:18 -0400 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1eyJyj-000216-57 for qemu-devel@nongnu.org; Tue, 20 Mar 2018 12:19:16 -0400 Received: from sauhun.de ([88.99.104.3]:32856 helo=pokefinder.org) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1eyJyi-00020G-Uc for qemu-devel@nongnu.org; Tue, 20 Mar 2018 12:19:13 -0400 From: Wolfram Sang Date: Tue, 20 Mar 2018 17:18:48 +0100 Message-Id: <20180320161850.2104-2-wsa+renesas@sang-engineering.com> In-Reply-To: <20180320161850.2104-1-wsa+renesas@sang-engineering.com> References: <20180320161850.2104-1-wsa+renesas@sang-engineering.com> MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: quoted-printable Subject: [Qemu-devel] [PATCH v3 1/3] nvram: at24c: prevent segfault by checking "rom-size" List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , To: qemu-devel@nongnu.org Cc: =?UTF-8?q?Philippe=20Mathieu-Daud=C3=A9?= , linux-renesas-soc@vger.kernel.org, Wolfram Sang The value for "rom-size" is used as a divisor, so it must not be 0 or it will segfault. A size of 0 wouldn't make sense anyhow. Reviewed-by: Philippe Mathieu-Daud=C3=A9 Signed-off-by: Wolfram Sang --- hw/nvram/eeprom_at24c.c | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/hw/nvram/eeprom_at24c.c b/hw/nvram/eeprom_at24c.c index 22183f5360..ccf78b25e4 100644 --- a/hw/nvram/eeprom_at24c.c +++ b/hw/nvram/eeprom_at24c.c @@ -121,6 +121,11 @@ int at24c_eeprom_init(I2CSlave *i2c) { EEPROMState *ee =3D AT24C_EE(i2c); =20 + if (!ee->rsize) { + ERR("rom-size not allowed to be 0\n"); + exit(1); + } + ee->mem =3D g_malloc0(ee->rsize); =20 if (ee->blk) { --=20 2.11.0