From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org X-Spam-Level: X-Spam-Status: No, score=-13.8 required=3.0 tests=BAYES_00,DKIM_SIGNED, DKIM_VALID,FREEMAIL_FORGED_FROMDOMAIN,FREEMAIL_FROM, HEADER_FROM_DIFFERENT_DOMAINS,INCLUDES_CR_TRAILER,INCLUDES_PATCH, MAILING_LIST_MULTI,SPF_HELO_NONE,SPF_PASS,USER_AGENT_GIT autolearn=ham autolearn_force=no version=3.4.0 Received: from mail.kernel.org (mail.kernel.org [198.145.29.99]) by smtp.lore.kernel.org (Postfix) with ESMTP id BDD56C4338F for ; Sun, 8 Aug 2021 14:53:13 +0000 (UTC) Received: from bombadil.infradead.org (bombadil.infradead.org [198.137.202.133]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by mail.kernel.org (Postfix) with ESMTPS id 6D04460F11 for ; Sun, 8 Aug 2021 14:53:13 +0000 (UTC) DMARC-Filter: OpenDMARC Filter v1.4.1 mail.kernel.org 6D04460F11 Authentication-Results: mail.kernel.org; dmarc=fail (p=none dis=none) header.from=gmx.com Authentication-Results: mail.kernel.org; spf=none smtp.mailfrom=lists.infradead.org DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=lists.infradead.org; s=bombadil.20210309; h=Sender: Content-Transfer-Encoding:Content-Type:List-Subscribe:List-Help:List-Post: List-Archive:List-Unsubscribe:List-Id:MIME-Version:References:In-Reply-To: Message-Id:Date:Subject:Cc:To:From:Reply-To:Content-ID:Content-Description: Resent-Date:Resent-From:Resent-Sender:Resent-To:Resent-Cc:Resent-Message-ID: List-Owner; bh=ZVKE4kcLiJz8wamRkMx/lKJxbePb6KFTBruxK7Ot7Eg=; b=b14LxwOVKbV43m No6k3OKHkMCINRjkColrRtJ9PmOyxx6ZRjIJfduiLkU3dyBH1vG+bG/FLE8nCCht7dFzQh0oCVPa1 WpG7necfq4+byx00ca8bWqphvmWC6enpmhPa3/Pv5ZkSSBztkWpBO5UrIFssJ3kX7TFn3+SA+b53Q Wfsg+z0+sjSudgErNBmh5+WdY9LAD7LbL3nXeYRNttgu307u4wWQXuq5ZddLxVt5VB7BeBkg5ax8V ORyjEp9vhsETFjmTa9MvIWkppqvqRCkAUEoS6YnwsovUNcKo7RIvgjs4HDQRg4H0NVShT/3KUjiLh AQRHphX6KwLspMUlZX8w==; Received: from localhost ([::1] helo=bombadil.infradead.org) by bombadil.infradead.org with esmtp (Exim 4.94.2 #2 (Red Hat Linux)) id 1mCk8S-00Fz8G-LR; Sun, 08 Aug 2021 14:50:44 +0000 Received: from mout.gmx.net ([212.227.15.19]) by bombadil.infradead.org with esmtps (Exim 4.94.2 #2 (Red Hat Linux)) id 1mCk8M-00Fz7x-Ky for linux-arm-kernel@lists.infradead.org; Sun, 08 Aug 2021 14:50:42 +0000 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=gmx.net; s=badeba3b8450; t=1628434230; bh=dnbnIgetA2HSvGj9st+ftD9THu1GINdsSq+4RvpezMU=; h=X-UI-Sender-Class:From:To:Cc:Subject:Date:In-Reply-To:References; b=ITqjeZmP19uQ5eS39HcPhVQJ04VERDZRvPlYhaOqe25rcXPcgneIiOwehe7RmgBnJ Ezssq4+CzoidNm/SWThQHqx2f5s0bmLLEUYK6CQw5x7lVyXhGzud6KbNggZ9uHXtwt K9oc2LIecG5P9lFH7uVeeBFoG7bWN80UW4DCFl98= X-UI-Sender-Class: 01bb95c1-4bf8-414a-932a-4f6e2808ef9c Received: from localhost.localdomain ([79.150.72.99]) by mail.gmx.net (mrgmx004 [212.227.17.184]) with ESMTPSA (Nemesis) id 1MpUUw-1mvfmk07dk-00pqqk; Sun, 08 Aug 2021 16:50:30 +0200 From: Len Baker To: Andy Gross , Bjorn Andersson , Geert Uytterhoeven , Magnus Damm , Santosh Shilimkar Cc: Len Baker , Kees Cook , David Laight , Robin Murphy , linux-hardening@vger.kernel.org, linux-arm-msm@vger.kernel.org, linux-kernel@vger.kernel.org, linux-renesas-soc@vger.kernel.org, linux-arm-kernel@lists.infradead.org Subject: [PATCH v4 2/3] drivers/soc/renesas: Prefer memcpy over strcpy Date: Sun, 8 Aug 2021 14:50:11 +0200 Message-Id: <20210808125012.4715-3-len.baker@gmx.com> X-Mailer: git-send-email 2.25.1 In-Reply-To: <20210808125012.4715-1-len.baker@gmx.com> References: <20210808125012.4715-1-len.baker@gmx.com> MIME-Version: 1.0 X-Provags-ID: V03:K1:s+2GOJ9JJjsrQL+ZL7tVIYQT5stQLcH+ApXr/G0xsuDveEeU+Lc UFhX/NHZhKRTsI6HwSAQBN1JTxA00ohLhPKfajdptUJloOjUvvQVBAAXizU6zT6gn+YgC2r 2vvhiyObK++tgAVoOdyDb7Zj4wPVz7pjQ18l7kJ47hob54tVPJU7QP5764z1tNq/Jl4eaFi 9plXTxWkG1P78F3/uDkkA== X-UI-Out-Filterresults: notjunk:1;V03:K0:CBcb5hSVrJs=:xegYaanLnDtAf8ejrmzmke u27N1yH+y5rqraLuZv4PCarTIYwdRkwQCTYMrTwNiA46i65D+bz/qryrLyZGXo08pQzZI92xk QHwV/nsFDSJXfZh22hutInt4QkZCI1cKqMuSONn5NZ9g6EfIW5JP8RnITlqYw/FP3Y+awHYIH x7xJND8PUSyLfAQHr7KOnvBXE6yOc+FRP8zlv4Ofi4Sw33JaTZ9/wbhpw5y175a9z3WaPnJtD /va1ER2ZONP6bqpCrm3puSHBmJmMfYKyKzAwVOcqbND2GCxV/samcLS5WlNWsYROEXwX/uiBW Mu06YGsX9p8CgkhYQNOwmKQRFKlKdYbuQUfFdzGccuI8m91YTIucXoEL3mPr9NpjgSYQGNLtS 5Ci7qFy16bkD3rUqSLHfgrqXWmW173MYOePC9U9CHO07bHvBrHnpQy/p+VFWMdZSzCxSxD6Rd +TOVg0xLfCKp7fJLG8Gz61PTh+iXs8+joFiyVTtUMEH6sv2S0cpIV+AgRPIB6l2rsTatfu5YE zAMprlVhgzsZVDHW5cMI9FEippsW+MEMQOilAdybuYFD3PY1nCi2vkSclTduq8s5r4xLVGHKh coGkvYR+l9dLzxwpYUw088g/E+8+/ahpTqqcDvTdtwDCRnpO60TYZaAaXQbvPVd5KiGvG1zf4 rGRzPquFIhTIObDPAMkmrCYPplbML9l9iCA7uHHnr0ZCJFqq/26pWu6ijICM8sDdIlQp7/Acc 4IuavGaljyKlm9xCDmri6RVBnPOAwSU7++w+vjrDbTUJlP3XLzUROJreZfYe9M4JqyFxlyWy5 Dhw6Sn/MLtrZeuO4YTV83uVuUMGAb20I9Upe8oI5DC1mR8N/yUv/IVaoh/rajjpjtL7b+N7z/ ipgrse3gJjVR7LfcFPxmmsig4vzDbB+Plz5Ea6PM5EuyHbYQPsoNkhUlT0jDnbWbGKZV4s0K8 xTvY8QtfGhz70CB2olSzlrskA6pvZ9c85VnAfFhimC5SuXtHN6zb5VWF416rf53svJvVq3/W+ tgSYPFzRdXYAM2i0HRV6LrNJPZwgDXkQ8ubfAiHEZWJOsB9h9V54a6fnrnUIRasrxSO/dR0Wx 0TAUkC6EW5XdCwU4XW9eoalUmIsdDdBQhaoHwQvokN6F6/yyv+157B2PA== X-CRM114-Version: 20100106-BlameMichelson ( TRE 0.8.0 (BSD) ) MR-646709E3 X-CRM114-CacheID: sfid-20210808_075039_022136_32F65367 X-CRM114-Status: GOOD ( 11.71 ) X-BeenThere: linux-arm-kernel@lists.infradead.org X-Mailman-Version: 2.1.34 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: 7bit Sender: "linux-arm-kernel" Errors-To: linux-arm-kernel-bounces+linux-arm-kernel=archiver.kernel.org@lists.infradead.org strcpy() performs no bounds checking on the destination buffer. This could result in linear overflows beyond the end of the buffer, leading to all kinds of misbehaviors. So, use memcpy() as a safe replacement. This is a previous step in the path to remove the strcpy() function entirely from the kernel. Signed-off-by: Len Baker --- drivers/soc/renesas/r8a779a0-sysc.c | 6 ++++-- drivers/soc/renesas/rcar-sysc.c | 6 ++++-- 2 files changed, 8 insertions(+), 4 deletions(-) diff --git a/drivers/soc/renesas/r8a779a0-sysc.c b/drivers/soc/renesas/r8a779a0-sysc.c index d464ffa1be33..7410b9fa9846 100644 --- a/drivers/soc/renesas/r8a779a0-sysc.c +++ b/drivers/soc/renesas/r8a779a0-sysc.c @@ -404,19 +404,21 @@ static int __init r8a779a0_sysc_pd_init(void) for (i = 0; i < info->num_areas; i++) { const struct r8a779a0_sysc_area *area = &info->areas[i]; struct r8a779a0_sysc_pd *pd; + size_t n; if (!area->name) { /* Skip NULLified area */ continue; } - pd = kzalloc(sizeof(*pd) + strlen(area->name) + 1, GFP_KERNEL); + n = strlen(area->name) + 1; + pd = kzalloc(sizeof(*pd) + n, GFP_KERNEL); if (!pd) { error = -ENOMEM; goto out_put; } - strcpy(pd->name, area->name); + memcpy(pd->name, area->name, n); pd->genpd.name = pd->name; pd->pdr = area->pdr; pd->flags = area->flags; diff --git a/drivers/soc/renesas/rcar-sysc.c b/drivers/soc/renesas/rcar-sysc.c index 53387a72ca00..b0a80de34c98 100644 --- a/drivers/soc/renesas/rcar-sysc.c +++ b/drivers/soc/renesas/rcar-sysc.c @@ -396,19 +396,21 @@ static int __init rcar_sysc_pd_init(void) for (i = 0; i < info->num_areas; i++) { const struct rcar_sysc_area *area = &info->areas[i]; struct rcar_sysc_pd *pd; + size_t n; if (!area->name) { /* Skip NULLified area */ continue; } - pd = kzalloc(sizeof(*pd) + strlen(area->name) + 1, GFP_KERNEL); + n = strlen(area->name) + 1; + pd = kzalloc(sizeof(*pd) + n, GFP_KERNEL); if (!pd) { error = -ENOMEM; goto out_put; } - strcpy(pd->name, area->name); + memcpy(pd->name, area->name, n); pd->genpd.name = pd->name; pd->ch.chan_offs = area->chan_offs; pd->ch.chan_bit = area->chan_bit; -- 2.25.1 _______________________________________________ linux-arm-kernel mailing list linux-arm-kernel@lists.infradead.org http://lists.infradead.org/mailman/listinfo/linux-arm-kernel