From nobody Mon Feb 17 15:39:09 2025 X-Original-To: dev-commits-src-all@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4YxRf5620Gz5nnfJ; Mon, 17 Feb 2025 15:39:09 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256 client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "R11" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4YxRf559KTz3ZcW; Mon, 17 Feb 2025 15:39:09 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1739806749; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=4nZ/5MmCZ8bshr1lZqRlNBQd2TTNZ7H5FL7Ko0iUEo0=; b=j2AC4MZCyu9Sa6hz7px5JGEboV/llfJPL7NkjbtcZIRr7fc8bf43TTEbpVMxTDaSVKC/bg v9Utd8KEUc+8ixJQOF6/EsdzTqDNskJlsbQhpjm0acDzKWeDixkofCUxwSv7OaDckyWMmc IbYc7ecvewoJUw9850hLmQyTtNbLpAzvooJbiSxP0js4xyxbOVoUYWAp4ACCyfhgk39f1F pFxcB0RzLtv/pE2iuL+cAoK795GO6jraVXOZSi/26W4VIyhrwXAKAgyHdmVSUXSo0AtCTN MnshYUXGn3UL4pWl7RobWffolykeFLWqfFo/IzF0EaHYbqEoCS0mHD1XeCuiIA== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1739806749; a=rsa-sha256; cv=none; b=WS5wQ1RoI9RGmTC2CbnjODriAk0tq16tO9sCZd+SA2hPzeUjL41XffllyLT67yp3D9noOA aMyTEf29QzXsfXNT7GDS6xmZ2idUw+pevLx/+eYsVKoqURqhq30RY1Ze8I/Svhw/M7mexf 0vpMrdNbQF/V8ax9MFUHMtB9vbWrW2i1TNDIlo+CHKJC0zgTG3Yx0pmUKj5T10A01wPLaq gTL2bU2EO8SWlHAAxjGT13Q21CMLpgNgLGo3YUBXGehJ/yVBAkU40xNG/UhaAx2DsSI9eN mMdthPFPStSF3KLxsd98a4S/+a5+JQ9vTD/XHy+M2O4kn9YEjifvV+eGUqDd5w== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1739806749; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=4nZ/5MmCZ8bshr1lZqRlNBQd2TTNZ7H5FL7Ko0iUEo0=; b=A7LaFAoBVB6WeiKYSorDpOPLJY+rbri8RMTNOxEMVFUsFVd4U3i9XZpaxC1OGbIfub7MaR AqnWbOIsGm06Y3USfzPQOB8WWBkmvCx00g2up39Xmv6Krnrms4iuBaqoNW6xVdp1bVFL48 hU9B88sKeabvkhzv/HnIoopx4nDbow+aziXDkS3EqaiF7fzaAs5MJgbZ9LPuPaM2L1mH9R DgOWpRYXWcyqdg773Z5fozpg1WdCL6c6GgfSDnsoX532BnDMuiuKzrRLBAjYq3YSmd0YvS 3v2yRBAPr7oHE3ayVHzmUc/dZmGEX81ff657cKTxolM+8LcgaX8X9Ov0lxiOig== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4YxRf54GjlzfjX; Mon, 17 Feb 2025 15:39:09 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.18.1/8.18.1) with ESMTP id 51HFd9cn070311; Mon, 17 Feb 2025 15:39:09 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 51HFd9wT070308; Mon, 17 Feb 2025 15:39:09 GMT (envelope-from git) Date: Mon, 17 Feb 2025 15:39:09 GMT Message-Id: <202502171539.51HFd9wT070308@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: Zhenlei Huang Subject: git: 90a3b6a7a4e4 - main - libkern: strdup.c, strndup.c: Prefer memcpy() over bcopy() List-Id: Commit messages for all branches of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-all List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-all@freebsd.org Sender: owner-dev-commits-src-all@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: zlei X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: 90a3b6a7a4e4c8201ba1bb90fb8e2b088f3a5788 Auto-Submitted: auto-generated The branch main has been updated by zlei: URL: https://cgit.FreeBSD.org/src/commit/?id=90a3b6a7a4e4c8201ba1bb90fb8e2b088f3a5788 commit 90a3b6a7a4e4c8201ba1bb90fb8e2b088f3a5788 Author: Zhenlei Huang AuthorDate: 2025-02-17 15:37:59 +0000 Commit: Zhenlei Huang CommitDate: 2025-02-17 15:37:59 +0000 libkern: strdup.c, strndup.c: Prefer memcpy() over bcopy() The newly allocated memory can not overlap with the string if the string is properly null-terminated or the maxlen is a valid lengh, i.e no out of bounds reads. Prefer memcpy() over memmove(), aka bcopy(), for slight performance gain. No functional change intended. Reviewed by: kib MFC after: 2 weeks Differential Revision: https://reviews.freebsd.org/D49026 --- sys/libkern/strdup.c | 2 +- sys/libkern/strndup.c | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/sys/libkern/strdup.c b/sys/libkern/strdup.c index 4f7b62a3941d..de56ce67db72 100644 --- a/sys/libkern/strdup.c +++ b/sys/libkern/strdup.c @@ -46,7 +46,7 @@ strdup_flags(const char *string, struct malloc_type *type, int flags) copy = malloc(len, type, flags); if (copy == NULL) return (NULL); - bcopy(string, copy, len); + memcpy(copy, string, len); return (copy); } diff --git a/sys/libkern/strndup.c b/sys/libkern/strndup.c index 2d71f2463242..75b33339e1c7 100644 --- a/sys/libkern/strndup.c +++ b/sys/libkern/strndup.c @@ -42,7 +42,7 @@ strndup(const char *string, size_t maxlen, struct malloc_type *type) len = strnlen(string, maxlen) + 1; copy = malloc(len, type, M_WAITOK); - bcopy(string, copy, len); + memcpy(copy, string, len); copy[len - 1] = '\0'; return (copy); }