From nobody Sat Sep 05 15:44:44 2026 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 4hcd1s6dtXz6qjS7 for ; Sat, 05 Sep 2026 15:44:49 +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 "YR2" (not verified)) by mx1.freebsd.org (Postfix) with ESMTPS id 4hcd1s323Mz4CdJ for ; Sat, 05 Sep 2026 15:44:49 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1788623089; 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=aEyqqrqNcA3cT+HlY0bqfTr9RuJmZx4r51TdxTRdALk=; b=PSUObjtLlZVpaEOs5K0hBMzJl9fAnly4Kirql7DhrEIOW3GZQgwkkuiPY0hQuQA1C6j8Y3 hUjkwb5D8T6r3gSqYpdGGsY/GgAZcCoGWwvMNxa8dh9ILgqPZ0WC7D8576Kq9MBG60NErk 6l6IIRmsnJZ9JwrhIZap6OfTbF5ePWqS5YBaYH/JsLvGhQEy8ghwydvshrAopgEZ+wVZi2 8bIZREooGmwRzHoddL5xsp51Ocm9kwb87hrXX864eNtJbktvjSIGLl5XKTPGB9St9uVc4q vZCspjricPDtyKqs01Pp6hh5kgD/Rr1rs6ZF0veHO0pjbxQYU/rgagRWkSX2OA== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1788623089; a=rsa-sha256; cv=none; b=JoPc1DuYAsGo4YIPX/rMfZb2xqcU3Dp/q4MQglQr3V1UWxr6bfyXeQ5BwUn51NfsbvAtbq TUs4mQAxZjLdC548Ze8KCfgRzmNjSZN+38jC6c7fiu2eRDX2ZvQSF+UfEsHjpCMqIaeXho Jfn5snj1cyIEQC1QTnzFbQix/B84Hms1/7heNkt3N10JTIIq1zigMFL7XYe9cnc7BmESIw g2trXvSZaK60RQqxea81GB2RSfSKm9r9MmcOjVx0bFH7tbCLS0rhEif1N9sxdoCNLDrS1Y SuC+2nUtWh656HsecHmL3hGjnwzgBk68HvA+yX4lGandYH9hdg9ujvPk+eQAnw== 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=1788623089; 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=aEyqqrqNcA3cT+HlY0bqfTr9RuJmZx4r51TdxTRdALk=; b=ZRF4X55Ejq7Rmf8i/R7FvYoe3Nkk9UpAvXd/wryoXaJpoYShR8qMuAXLMGDhlHkArTC6iS OVs+kWxYxs5QW0j0VDjji7HKsPEAJfnr1H0j6ZeMDNn7rmBZ5vTRlSdnOIQrMJM6KMJnh0 +hBIARMangxbsTmL8lpI+Zbl688cqZCTiCiqPA2MfojYQDQAfeyBauale1fhHehBemty9i hiuCGuha6fL5Vnjc7EEoMa9wiAjjkT4V6fIjhGCnYrcqQ04++fhaVmoRyMypoWQo8bzhFB 3p1/Y6ydmyCdlt54E3rmrMHRjjS9c5yGFxWD21LHR9ZcdGsiqznRarPIT0gjDg== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) by mxrelay.nyi.freebsd.org (Postfix) with ESMTP id 4hcd1s1xPXzrQ4 for ; Sat, 05 Sep 2026 15:44:49 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from git (uid 1279) (envelope-from git@FreeBSD.org) id 4014d by gitrepo.freebsd.org (DragonFly Mail Agent v0.13+ on gitrepo.freebsd.org); Sat, 05 Sep 2026 15:44:44 +0000 To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: Dag-Erling=?utf-8?Q? Sm=C3=B8rg?=rav Subject: git: 911bda7cffbf - main - hastd: Ensure nvpair padding is initialized 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 List-Id: List-Post: List-Help: List-Subscribe: List-Unsubscribe: List-Owner: Precedence: list MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: des X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: 911bda7cffbf358c4e83ea05cfe980d429aff61c Auto-Submitted: auto-generated Date: Sat, 05 Sep 2026 15:44:44 +0000 Message-Id: <6a9c38ec.4014d.74d3a11@gitrepo.freebsd.org> The branch main has been updated by des: URL: https://cgit.FreeBSD.org/src/commit/?id=911bda7cffbf358c4e83ea05cfe980d429aff61c commit 911bda7cffbf358c4e83ea05cfe980d429aff61c Author: Dag-Erling Smørgrav AuthorDate: 2026-09-05 15:44:05 +0000 Commit: Dag-Erling Smørgrav CommitDate: 2026-09-05 15:44:34 +0000 hastd: Ensure nvpair padding is initialized The proto-libnv implementation embedded in hastd pads names and values out to the nearest multiple of eight bytes, but leaves the padding uninitialized, leaking up to 14 bytes of recycled heap per pair in a message. While here, switch from bcopy() to memcpy(). MFC after: 3 days Reviewed by: kevans, emaste Differential Revision: https://reviews.freebsd.org/D59343 --- sbin/hastd/nv.c | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/sbin/hastd/nv.c b/sbin/hastd/nv.c index 16ab95cf0dc6..87d59c6929b9 100644 --- a/sbin/hastd/nv.c +++ b/sbin/hastd/nv.c @@ -500,7 +500,7 @@ nv_get_##type(struct nv *nv, const char *namefmt, ...) \ return (0); \ PJDLOG_ASSERT((nvh->nvh_type & NV_ORDER_MASK) == NV_ORDER_HOST);\ PJDLOG_ASSERT(sizeof(value) == nvh->nvh_dsize); \ - bcopy(NVH_DATA(nvh), &value, sizeof(value)); \ + memcpy(&value, NVH_DATA(nvh), sizeof(value)); \ \ return (value); \ } @@ -767,7 +767,7 @@ nv_add(struct nv *nv, const unsigned char *value, size_t vsize, int type, namesize = strlen(name) + 1; - nvh = malloc(sizeof(*nvh) + roundup2(namesize, 8)); + nvh = calloc(1, sizeof(*nvh) + roundup2(namesize, 8)); if (nvh == NULL) { if (nv->nv_error == 0) nv->nv_error = ENOMEM; @@ -776,7 +776,7 @@ nv_add(struct nv *nv, const unsigned char *value, size_t vsize, int type, nvh->nvh_type = NV_ORDER_HOST | type; nvh->nvh_namesize = (uint8_t)namesize; nvh->nvh_dsize = (uint32_t)vsize; - bcopy(name, nvh->nvh_name, namesize); + memcpy(nvh->nvh_name, name, namesize); /* Add header first. */ if (ebuf_add_tail(nv->nv_ebuf, nvh, NVH_HSIZE(nvh)) == -1) {