Received: by 2002:a17:90a:9307:0:0:0:0 with SMTP id p7csp3946435pjo; Tue, 3 Mar 2020 09:54:26 -0800 (PST) X-Google-Smtp-Source: ADFU+vt/yJWfusEPFQ1HQDcSurQ1bkaQdurUazr+locMsk21+y/BdNxjrTiLsEuyCgVUZglis1aq X-Received: by 2002:a54:410e:: with SMTP id l14mr3209629oic.42.1583258066044; Tue, 03 Mar 2020 09:54:26 -0800 (PST) ARC-Seal: i=1; a=rsa-sha256; t=1583258066; cv=none; d=google.com; s=arc-20160816; b=S7MgsMq6Z4NhrW15UeGsJukOWW18eGemC+Au9jWTOdDxWifXbdLtBJA3WT2av9Mhic 5kIg5ze63w9leFPPote9KnS07iuY7n6mzAa+VBqO7/MJ3YiuZ39Do8JKRjlcgahSQjv6 3Kjj3kULU4Lh9Ja77hOoOB5m9hpW48T+QWJdN1V0DANYe++ouplRaWjp19VVHA6xGIWj KbIy9CABADGGbmYtvvrBM8KioMJ0i9/BKADBwBGHhop6h7xJ+/wlEn9005zhPi9JeEIg z0URZ7mVEGoez2DFoTkFMPn9YunfnCrd3GGSFneijbSEtpMmNKz/4TG7dz20FqNSFUJI MJag== 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:dkim-signature; bh=DcUAoJYJY+Z3JfW5FgI6g7DmRipy9aEwQkfKH0cR9uI=; b=fn6nNXlPBY4PEU5sGiNxzaBTabHrCn/u81VpUM9BPU/HHuMIzCWgRLI8C08VoLbEV3 hZB11VX1345SnTOirIpRrhxS7P2W8cFMXEfHuwWjnIiZxXmGW86JdxNCEsm/ZMhrz/su RVaOm+Q8l+868p+DyLevtZAaECn4zb/u58OXqA33YE5PGl2Ijv64Vqo74Rmi5gdI7TC5 seBo12i6s0I7m3sPKdOjFUmFtD0Lrn4cnepoAcE+/ygciljalmZVMwfM2jQzRJqgtkkl e4Bb7Q2WL+tGW8qkWljqSgCZr2bweYeTjZanEWK+KhgSmqWQQIxqQDtsiHaK1arDs6gq DXaw== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@kernel.org header.s=default header.b="FK4X/YOr"; 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 y186si8371483oig.241.2020.03.03.09.54.12; Tue, 03 Mar 2020 09:54:26 -0800 (PST) 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; dkim=pass header.i=@kernel.org header.s=default header.b="FK4X/YOr"; 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 S1732240AbgCCRwy (ORCPT + 99 others); Tue, 3 Mar 2020 12:52:54 -0500 Received: from mail.kernel.org ([198.145.29.99]:33234 "EHLO mail.kernel.org" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1731067AbgCCRwu (ORCPT ); Tue, 3 Mar 2020 12:52:50 -0500 Received: from localhost (83-86-89-107.cable.dynamic.v4.ziggo.nl [83.86.89.107]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by mail.kernel.org (Postfix) with ESMTPSA id C079B20CC7; Tue, 3 Mar 2020 17:52:49 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org; s=default; t=1583257970; bh=16G+r9AkZmKoMHThPkU6o83ScBvSpFl2idhcFxZGbFM=; h=From:To:Cc:Subject:Date:In-Reply-To:References:From; b=FK4X/YOrpPLIZ+eWajl71fmqoXc2IPyowZylYUANZgn4qFpkj7+V8muS9Ld054Raq 9kDXCTgS6kZAueIMOFtqfdWPVq1koUjquVJlIZlqdDvwTbAgGrn2SD85cZoxhtDVqB 8RBYPKI5Sa+Fk8dUZqn9153HLhczYIRJOcKWnpl8= From: Greg Kroah-Hartman To: linux-kernel@vger.kernel.org Cc: Greg Kroah-Hartman , stable@vger.kernel.org, kbuild test robot , Corey Minyard , Sasha Levin Subject: [PATCH 5.4 022/152] ipmi:ssif: Handle a possible NULL pointer reference Date: Tue, 3 Mar 2020 18:42:00 +0100 Message-Id: <20200303174304.982887874@linuxfoundation.org> X-Mailer: git-send-email 2.25.1 In-Reply-To: <20200303174302.523080016@linuxfoundation.org> References: <20200303174302.523080016@linuxfoundation.org> User-Agent: quilt/0.66 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 From: Corey Minyard [ Upstream commit 6b8526d3abc02c08a2f888e8c20b7ac9e5776dfe ] In error cases a NULL can be passed to memcpy. The length will always be zero, so it doesn't really matter, but go ahead and check for NULL, anyway, to be more precise and avoid static analysis errors. Reported-by: kbuild test robot Signed-off-by: Corey Minyard Signed-off-by: Sasha Levin --- drivers/char/ipmi/ipmi_ssif.c | 10 +++++++--- 1 file changed, 7 insertions(+), 3 deletions(-) diff --git a/drivers/char/ipmi/ipmi_ssif.c b/drivers/char/ipmi/ipmi_ssif.c index 22c6a2e612360..8ac390c2b5147 100644 --- a/drivers/char/ipmi/ipmi_ssif.c +++ b/drivers/char/ipmi/ipmi_ssif.c @@ -775,10 +775,14 @@ static void msg_done_handler(struct ssif_info *ssif_info, int result, flags = ipmi_ssif_lock_cond(ssif_info, &oflags); msg = ssif_info->curr_msg; if (msg) { + if (data) { + if (len > IPMI_MAX_MSG_LENGTH) + len = IPMI_MAX_MSG_LENGTH; + memcpy(msg->rsp, data, len); + } else { + len = 0; + } msg->rsp_size = len; - if (msg->rsp_size > IPMI_MAX_MSG_LENGTH) - msg->rsp_size = IPMI_MAX_MSG_LENGTH; - memcpy(msg->rsp, data, msg->rsp_size); ssif_info->curr_msg = NULL; } -- 2.20.1