From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from atuin.qyliss.net (localhost [IPv6:::1]) by atuin.qyliss.net (Postfix) with ESMTP id 200438F3B; Sun, 10 May 2026 16:55:58 +0000 (UTC) Received: by atuin.qyliss.net (Postfix, from userid 993) id 85CE18F32; Sun, 10 May 2026 16:55:54 +0000 (UTC) X-Spam-Checker-Version: SpamAssassin 4.0.1 (2024-03-26) on atuin.qyliss.net X-Spam-Level: X-Spam-Status: No, score=-0.8 required=3.0 tests=DKIM_SIGNED,DKIM_VALID, DKIM_VALID_AU,DMARC_MISSING,RCVD_IN_DNSWL_LOW,SPF_HELO_PASS autolearn=unavailable autolearn_force=no version=4.0.1 Received: from fhigh-b1-smtp.messagingengine.com (fhigh-b1-smtp.messagingengine.com [202.12.124.152]) by atuin.qyliss.net (Postfix) with ESMTPS id 318668FA2 for ; Sun, 10 May 2026 16:55:50 +0000 (UTC) Received: from phl-compute-04.internal (phl-compute-04.internal [10.202.2.44]) by mailfhigh.stl.internal (Postfix) with ESMTP id E4C9B7A0085 for ; Sun, 10 May 2026 12:55:47 -0400 (EDT) Received: from phl-frontend-04 ([10.202.2.163]) by phl-compute-04.internal (MEProxy); Sun, 10 May 2026 12:55:47 -0400 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=alyssa.is; h=cc :content-transfer-encoding:content-type:date:date:from:from :in-reply-to:message-id:mime-version:reply-to:subject:subject:to :to; s=fm2; t=1778432147; x=1778518547; bh=/ADhs6BA2hj6/UM13BQ6v AuCY2Uibam1skQQJPKqsMs=; b=O/rL2fI+OUz2Kfp/7tBaOUylMkHhoP8eoL0gu w5xjfcW1AAJrbFaZWtXnEdEfdFPCyTo4TG2QlHnY5to2hMgim/NKz35nGgTw46b6 hdi2Un4ZKQvEkjZLEz2J25/S0c6cnAHGCoYijQsZkKtZ289YgVgeMveAUQZ0haOc NBFdSp1JYvxUA/bYFN9jZK7wdJpC8pADSNJFMaojzZ7lUUT82xQrsy1i6n2dkUTd ugjFd6GS2hCnYafP0zgMF4Y8AcOu1fBhp7DGBjSwHFMHmz7ELeJT6cv5QjF/vYhY jze/CGjsESNaTxTS9N9MWJI+EDa/LJzyCfL41aJKMxqjuod4w== DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d= messagingengine.com; h=cc:content-transfer-encoding:content-type :date:date:feedback-id:feedback-id:from:from:in-reply-to :message-id:mime-version:reply-to:subject:subject:to:to :x-me-proxy:x-me-sender:x-me-sender:x-sasl-enc; s=fm3; t= 1778432147; x=1778518547; bh=/ADhs6BA2hj6/UM13BQ6vAuCY2Uibam1skQ QJPKqsMs=; b=nxsknccuGJCc3p0f5LcHmTeesbDxKDGQPSxaeFtVlQsu9S4XNws HJZEQ5XNdlvrAElMJ6Sf3lsU/pT1+gvzqsr+3JS1vfDb1nxR8+6zqi3Wq00fI8+z khDIhj8ZM48uIeMozQgCGEBcqdC0GMcuD28IVxPY02YuyLhkgLzHLN4byIMlY3Ve Po/++PNfGmS7PMdA3xp3+5wzkth3xPs5vCTnl9fC62i8o7b761/Ly1dTfPRligWN 0U37ycAZ+KJAI866crXZXwva/83YMIhzzzS/f2GWjIBly3Mnx04A8udDW4cR7EdU L8mLHA43yamFq69yOd8+UNKIGSBha7Q/30Q== X-ME-Sender: X-ME-Received: X-ME-Proxy-Cause: gggruggvucftvghtrhhoucdtuddrgeefhedrtddtgdduudeiieefucetufdoteggodetrf dotffvucfrrhhofhhilhgvmecuhfgrshhtofgrihhlpdfurfetoffkrfgpnffqhgenuceu rghilhhouhhtmecufedttdenucenucfjughrpefhvffufffkofgggfestdekredtredttd enucfhrhhomheptehlhihsshgrucftohhsshcuoehhihesrghlhihsshgrrdhisheqnecu ggftrfgrthhtvghrnhephedvfffghfetieejgfetfedtgffhvdehueehvdejudfggefgle ejgfelfeevgfefnecuvehluhhsthgvrhfuihiivgeptdenucfrrghrrghmpehmrghilhhf rhhomhephhhisegrlhihshhsrgdrihhspdhnsggprhgtphhtthhopedupdhmohguvgepsh hmthhpohhuthdprhgtphhtthhopeguvghvvghlsehsphgvtghtrhhumhdqohhsrdhorhhg X-ME-Proxy: Feedback-ID: i12284293:Fastmail Received: by mail.messagingengine.com (Postfix) with ESMTPA for ; Sun, 10 May 2026 12:55:47 -0400 (EDT) Received: by mbp.qyliss.net (Postfix, from userid 1000) id 0A2FA80A29CC; Sun, 10 May 2026 18:55:46 +0200 (CEST) From: Alyssa Ross To: devel@spectrum-os.org Subject: [PATCH] tools/vm-set-persist.c: fix "memory leak" Date: Sun, 10 May 2026 18:55:41 +0200 Message-ID: <20260510165541.32975-1-hi@alyssa.is> X-Mailer: git-send-email 2.53.0 MIME-Version: 1.0 Content-Transfer-Encoding: 8bit Message-ID-Hash: PZXTII7VZ5TPPFHCCUSHLGLBFIICMB6X X-Message-ID-Hash: PZXTII7VZ5TPPFHCCUSHLGLBFIICMB6X X-MailFrom: hi@alyssa.is X-Mailman-Rule-Misses: dmarc-mitigation; no-senders; approved; emergency; loop; banned-address; member-moderation; header-match-devel.spectrum-os.org-0; header-match-devel.spectrum-os.org-1; header-match-devel.spectrum-os.org-2; header-match-devel.spectrum-os.org-3; header-match-devel.spectrum-os.org-4; nonmember-moderation; administrivia; implicit-dest; max-recipients; max-size; news-moderation; no-subject; digests; suspicious-header X-Mailman-Version: 3.3.9 Precedence: list List-Id: Patches and low-level development discussion Archived-At: <> List-Archive: <> List-Help: List-Owner: List-Post: List-Subscribe: List-Unsubscribe: Newer versions of clang-tidy complain about the "memory leak" from strdup. This is not a problem because this is not a long lived program nor a large allocation, but I think it's probably better to appease clang-tidy than to override it. Signed-off-by: Alyssa Ross --- tools/vm-set-persist.c | 18 +++++++++++------- 1 file changed, 11 insertions(+), 7 deletions(-) diff --git a/tools/vm-set-persist.c b/tools/vm-set-persist.c index ac759504..8f714b38 100644 --- a/tools/vm-set-persist.c +++ b/tools/vm-set-persist.c @@ -1,4 +1,4 @@ -// SPDX-FileCopyrightText: 2025 Alyssa Ross +// SPDX-FileCopyrightText: 2025-2026 Alyssa Ross // SPDX-License-Identifier: EUPL-1.2+ #include @@ -142,11 +142,12 @@ static void do_rename(int mnt, const char dir_name[static 1], int main(int argc, char *argv[]) { - int mnt; + int mnt, r; mode_t mode; uint64_t mnt_id; char *disk_path, *dir_name, *old_name, *new_name, - mnt_root[MNT_ROOT_MAX_LEN], source[SOURCE_MAX_LEN]; + mnt_root[MNT_ROOT_MAX_LEN], mnt_root_copy[MNT_ROOT_MAX_LEN], + source[SOURCE_MAX_LEN]; if (argc != 3) { fprintf(stderr, "Usage: vm-set-persist ID INSTANCE\n"); @@ -168,10 +169,13 @@ int main(int argc, char *argv[]) do_statx(disk_path, &mode, &mnt_id); do_statmount(mnt_id, mnt_root, source); - if (!(dir_name = strdup(mnt_root))) - err(EXIT_FAILURE, "strdup"); - dir_name = dirname(dir_name); - old_name = basename(mnt_root); + r = snprintf(mnt_root_copy, sizeof mnt_root_copy, "%s", mnt_root); + if (r == -1) + err(EXIT_FAILURE, "snprintf"); + if ((size_t)r >= sizeof mnt_root_copy) + errx(EXIT_FAILURE, "mnt_root longer than mnt_root_copy"); + dir_name = dirname(mnt_root); + old_name = basename(mnt_root_copy); mnt = do_mount(source); base-commit: 508851e5d884bc3f2906947dcd43b055dc0465f4 -- 2.53.0