Received: by 2002:ac0:a582:0:0:0:0:0 with SMTP id m2-v6csp1348680imm; Tue, 2 Oct 2018 06:55:28 -0700 (PDT) X-Google-Smtp-Source: ACcGV6204uRW8B2n4//rrKnaA5XTwKC4E2i1ovBCMS0yHHTMni1YUlt+l/LKhiexMkN3ntemijdt X-Received: by 2002:a63:89c1:: with SMTP id v184-v6mr14263967pgd.79.1538488528330; Tue, 02 Oct 2018 06:55:28 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1538488528; cv=none; d=google.com; s=arc-20160816; b=vDQ23pYWIm6pZyOutoewIRAqCxi983/nCYWMG/32dDE2SIN9c6keiqnnm2gI2htJyt hOLWQqzKxMBMb3ONjGaWLFCH8xmAQO2BTSW6thAmnQzG9Tk4cKudCeOXq4yt3E3Ke3KJ CHRZ9jqVlU9MfNWmSc1vS3ffN2kmvpTw4Igc0wwTW5vLcRFXYlms5U9qjYhKlHQWZCCy feCS7X1KsooJmkHTFxbpT+5v1qckT4TzyglHsnECg2PsHYBLsUZ2X0//h6Gd7uoTEGF6 vNFVC/KY15ZqNdOoFGM/KLgoJQulBj2gOGPx7Xy87C3ZsQn/FQDyQ7LWs6XHetdaWMEg ICkw== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:sender:content-transfer-encoding:mime-version :user-agent:references:in-reply-to:message-id:date:subject:cc:to :from; bh=bp9wgxrdPt2whzUW707yLj2sz+HR7Gox4WIM5Y1MAbg=; b=wUDaquxcmxDyI4pCBCLhLQj8w8U+LDOHRdKQ6+Zj2oJzepy12x+RevyCFsY6eFoORt /Ewn+zhKG0nPXdkhajNz6200lBvMLZa8924fTk1xltBNa6XmkIA3Y8DTHyIRlYGABa9K R7zGdrlJhJbCApYR9+7InOuovF4Q1meQ42lCnoMiS//Km2eqEn9KSi2zxaYUV/RUeDo1 SdGEteeq5xEFzKHL1Kii78wQPIoe3kHWbm4gVgd9DeQjAbT+FlyAwkO6QoadtB6IibrX da/DEjU6WXsHzaWtP6pAbROsO1tT3fuJiQZMq97goUZozUHOty+4Hfb6bbWg7VpxgHY/ gbxg== ARC-Authentication-Results: i=1; mx.google.com; spf=pass (google.com: best guess record for domain of linux-kernel-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org Return-Path: Received: from vger.kernel.org (vger.kernel.org. [209.132.180.67]) by mx.google.com with ESMTP id e127-v6si16983645pfe.8.2018.10.02.06.55.13; Tue, 02 Oct 2018 06:55:28 -0700 (PDT) Received-SPF: pass (google.com: best guess record for domain of linux-kernel-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) client-ip=209.132.180.67; Authentication-Results: mx.google.com; spf=pass (google.com: best guess record for domain of linux-kernel-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1731350AbeJBUPq (ORCPT + 99 others); Tue, 2 Oct 2018 16:15:46 -0400 Received: from mail.linuxfoundation.org ([140.211.169.12]:34476 "EHLO mail.linuxfoundation.org" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1730304AbeJBUPp (ORCPT ); Tue, 2 Oct 2018 16:15:45 -0400 Received: from localhost (24-104-73-23-ip-static.hfc.comcastbusiness.net [24.104.73.23]) by mail.linuxfoundation.org (Postfix) with ESMTPSA id F2BAC5AA; Tue, 2 Oct 2018 13:32:21 +0000 (UTC) From: Greg Kroah-Hartman To: linux-kernel@vger.kernel.org Cc: Greg Kroah-Hartman , stable@vger.kernel.org, Bart Van Assche , Tyrel Datwyler , Breno Leitao , "Martin K. Petersen" , Sasha Levin Subject: [PATCH 4.14 034/137] scsi: ibmvscsi: Improve strings handling Date: Tue, 2 Oct 2018 06:23:55 -0700 Message-Id: <20181002132500.843310424@linuxfoundation.org> X-Mailer: git-send-email 2.19.0 In-Reply-To: <20181002132458.446916963@linuxfoundation.org> References: <20181002132458.446916963@linuxfoundation.org> User-Agent: quilt/0.65 X-stable: review MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Sender: linux-kernel-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org 4.14-stable review patch. If anyone has any objections, please let me know. ------------------ From: Breno Leitao [ Upstream commit 1262dc09dc9ae7bf4ad00b6a2c5ed6a6936bcd10 ] Currently an open firmware property is copied into partition_name variable without keeping a room for \0. Later one, this variable (partition_name), which is 97 bytes long, is strncpyed into ibmvcsci_host_data->madapter_info->partition_name, which is 96 bytes long, possibly truncating it 'again' and removing the \0. This patch simply decreases the partition name to 96 and just copy using strlcpy() which guarantees that the string is \0 terminated. I think there is no issue if this there is a truncation in this very first copy, i.e, when the open firmware property is read and copied into the driver for the very first time; This issue also causes the following warning on GCC 8: drivers/scsi/ibmvscsi/ibmvscsi.c:281:2: warning: strncpy output may be truncated copying 96 bytes from a string of length 96 [-Wstringop-truncation] ... inlined from ibmvscsi_probe at drivers/scsi/ibmvscsi/ibmvscsi.c:2221:7: drivers/scsi/ibmvscsi/ibmvscsi.c:265:3: warning: strncpy specified bound 97 equals destination size [-Wstringop-truncation] CC: Bart Van Assche CC: Tyrel Datwyler Signed-off-by: Breno Leitao Acked-by: Tyrel Datwyler Signed-off-by: Martin K. Petersen Signed-off-by: Sasha Levin Signed-off-by: Greg Kroah-Hartman --- drivers/scsi/ibmvscsi/ibmvscsi.c | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) --- a/drivers/scsi/ibmvscsi/ibmvscsi.c +++ b/drivers/scsi/ibmvscsi/ibmvscsi.c @@ -93,7 +93,7 @@ static int max_requests = IBMVSCSI_MAX_R static int max_events = IBMVSCSI_MAX_REQUESTS_DEFAULT + 2; static int fast_fail = 1; static int client_reserve = 1; -static char partition_name[97] = "UNKNOWN"; +static char partition_name[96] = "UNKNOWN"; static unsigned int partition_number = -1; static LIST_HEAD(ibmvscsi_head); @@ -262,7 +262,7 @@ static void gather_partition_info(void) ppartition_name = of_get_property(of_root, "ibm,partition-name", NULL); if (ppartition_name) - strncpy(partition_name, ppartition_name, + strlcpy(partition_name, ppartition_name, sizeof(partition_name)); p_number_ptr = of_get_property(of_root, "ibm,partition-no", NULL); if (p_number_ptr)