From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from mx1.redhat.com (mx1.redhat.com [209.132.183.28]) by dpdk.org (Postfix) with ESMTP id CACD91B2FC for ; Mon, 5 Feb 2018 13:16:51 +0100 (CET) Received: from smtp.corp.redhat.com (int-mx03.intmail.prod.int.phx2.redhat.com [10.5.11.13]) (using TLSv1.2 with cipher AECDH-AES256-SHA (256/256 bits)) (No client certificate requested) by mx1.redhat.com (Postfix) with ESMTPS id 2FA1681DEC; Mon, 5 Feb 2018 12:16:51 +0000 (UTC) Received: from localhost (ovpn-117-200.ams2.redhat.com [10.36.117.200]) by smtp.corp.redhat.com (Postfix) with ESMTP id 5897360A97; Mon, 5 Feb 2018 12:16:43 +0000 (UTC) From: Stefan Hajnoczi To: dev@dpdk.org Cc: Maxime Coquelin , Yuanhan Liu , Stefan Hajnoczi Date: Mon, 5 Feb 2018 12:16:34 +0000 Message-Id: <20180205121642.26428-1-stefanha@redhat.com> X-Scanned-By: MIMEDefang 2.79 on 10.5.11.13 X-Greylist: Sender IP whitelisted, not delayed by milter-greylist-4.5.16 (mx1.redhat.com [10.5.110.25]); Mon, 05 Feb 2018 12:16:51 +0000 (UTC) Subject: [dpdk-dev] [PATCH 0/8] vhost: input validation enhancements X-BeenThere: dev@dpdk.org X-Mailman-Version: 2.1.15 Precedence: list List-Id: DPDK patches and discussions List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 05 Feb 2018 12:16:52 -0000 This patch series addresses missing input validation that I came across when reviewing vhost_user.c. The first patch explains the security model and the rest fixes places with missing checks. Now is a good time to discuss the security model if anyone disagrees or has questions about what Patch 1 says. Stefan Hajnoczi (8): vhost: add security model documentation to vhost_user.c vhost: avoid enum fields in VhostUserMsg vhost: validate untrusted memory.nregions field vhost: clear out unused SCM_RIGHTS file descriptors vhost: reject invalid log base mmap_offset values vhost: fix msg->payload union typo in vhost_user_set_vring_addr() vhost: validate virtqueue size vhost: check for memory_size + mmap_offset overflow lib/librte_vhost/vhost_user.h | 4 +-- lib/librte_vhost/socket.c | 8 +++++- lib/librte_vhost/vhost_user.c | 57 +++++++++++++++++++++++++++++++++++++++++-- 3 files changed, 64 insertions(+), 5 deletions(-) -- 2.14.3