From mboxrd@z Thu Jan 1 00:00:00 1970 From: Jacek Piasecki Subject: [PATCH v4] examples/vhost_scsi: fix buffer not terminated Date: Wed, 25 Oct 2017 12:07:18 +0200 Message-ID: <1508926038-12821-1-git-send-email-jacekx.piasecki@intel.com> References: <1507808061-37679-1-git-send-email-jacekx.piasecki@intel.com> Cc: maxime.coquelin@redhat.com, thomas@monjalon.net, yliu@fridaylinux.org, Jacek Piasecki , changpeng.liu@intel.com, stable@dpdk.org To: dev@dpdk.org Return-path: In-Reply-To: <1507808061-37679-1-git-send-email-jacekx.piasecki@intel.com> List-Id: DPDK patches and discussions List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: dev-bounces@dpdk.org Sender: "dev" Use snprintf instead strncpy to get safe null string termination. There was possible to get not terminated string after strncpy operation. Coverity issue: 158631 Fixes: db75c7af19bb ("examples/vhost_scsi: introduce a new sample app") Cc: changpeng.liu@intel.com Cc: stable@dpdk.org Signed-off-by: Jacek Piasecki Acked-by: Maxime Coquelin --- v4: RTE_DIM instead ARRAY_SIZE v3: checkpatch fix v2: snprintf instead strncpy --- examples/vhost_scsi/scsi.c | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/examples/vhost_scsi/scsi.c b/examples/vhost_scsi/scsi.c index 54d3104..fd430ec 100644 --- a/examples/vhost_scsi/scsi.c +++ b/examples/vhost_scsi/scsi.c @@ -307,7 +307,9 @@ vhost_bdev_scsi_inquiry_command(struct vhost_block_dev *bdev, strncpy((char *)inqdata->t10_vendor_id, "INTEL", 8); /* PRODUCT IDENTIFICATION */ - strncpy((char *)inqdata->product_id, bdev->product_name, 16); + snprintf((char *)inqdata->product_id, + RTE_DIM(inqdata->product_id), "%s", + bdev->product_name); /* PRODUCT REVISION LEVEL */ strncpy((char *)inqdata->product_rev, "0001", 4); -- 2.7.4