From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from eggs.gnu.org ([2001:4830:134:3::10]:50945) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1XFgP3-0002tu-D4 for qemu-devel@nongnu.org; Fri, 08 Aug 2014 05:24:06 -0400 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1XFgOy-00058X-JB for qemu-devel@nongnu.org; Fri, 08 Aug 2014 05:24:01 -0400 Received: from szxga01-in.huawei.com ([119.145.14.64]:55287) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1XFgOx-00054n-NB for qemu-devel@nongnu.org; Fri, 08 Aug 2014 05:23:56 -0400 From: zhanghailiang Date: Fri, 8 Aug 2014 17:21:06 +0800 Message-ID: <1407489672-12212-5-git-send-email-zhang.zhanghailiang@huawei.com> In-Reply-To: <1407489672-12212-1-git-send-email-zhang.zhanghailiang@huawei.com> References: <1407489672-12212-1-git-send-email-zhang.zhanghailiang@huawei.com> MIME-Version: 1.0 Content-Type: text/plain Subject: [Qemu-devel] [PATCH v4 04/10] ivshmem: check the value returned by fstat() List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , To: qemu-devel@nongnu.org Cc: kwolf@redhat.com, lkurusa@redhat.com, zhanghailiang , mst@redhat.com, jan.kiszka@siemens.com, riku.voipio@iki.fi, mjt@tls.msk.ru, peter.huangpeng@huawei.com, lcapitulino@redhat.com, stefanha@redhat.com, luonengjun@huawei.com, pbonzini@redhat.com, alex.bennee@linaro.org, rth@twiddle.net The function fstat() may fail, so check its return value. Acked-by: Levente Kurusa Signed-off-by: zhanghailiang --- hw/misc/ivshmem.c | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/hw/misc/ivshmem.c b/hw/misc/ivshmem.c index 768e528..2be4b86 100644 --- a/hw/misc/ivshmem.c +++ b/hw/misc/ivshmem.c @@ -324,7 +324,11 @@ static int check_shm_size(IVShmemState *s, int fd) { struct stat buf; - fstat(fd, &buf); + if (fstat(fd, &buf) < 0) { + fprintf(stderr, "ivshmem: exiting: fstat on fd %d failed: %s\n", + fd, strerror(errno)); + return -1; + } if (s->ivshmem_size > buf.st_size) { fprintf(stderr, -- 1.7.12.4