From nobody Sat Feb 7 13:41:49 2026 Received: from mail-pj1-f43.google.com (mail-pj1-f43.google.com [209.85.216.43]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id C5C96AD24 for ; Sun, 1 Feb 2026 18:17:07 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=209.85.216.43 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1769969829; cv=none; b=NhBNETZUU/zWEpjeEXAjnyZp6ef7T68ypv5Kj042UZxPav8F8w+iPZjr+umgdqfFsBCNLYASRI2CiuXBDxPTLZPTbCGDlVzCm3Mcj3uN8dkgWsKsmPv+ToQmlArm/gXqMpXNCiJ1nGZFyKA5UwsocpD0SUXWHyJZTIOJCWSypOw= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1769969829; c=relaxed/simple; bh=GUrSB2n7oRGHcPWkgJseQFjjXQatFD2FzE1j1iw6aYI=; h=From:To:Cc:Subject:Date:Message-ID:MIME-Version; b=fWqZPDkxeHvF2RQh4NKZUBkUrdizc2TtFoPwW5QyhYG0/TjAAjo1zfhTeT/22v8v1Sx2zSTndmcBsoHEC1esc1jfGNW55JQgo9g6Ap995w/QGzor7xAS+zyJOUpiApi44jWvDtmPIIXC+JWrtkHnaYuMgpxhOU6lsxyN+2NiPhc= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=gmail.com; spf=pass smtp.mailfrom=gmail.com; dkim=pass (2048-bit key) header.d=gmail.com header.i=@gmail.com header.b=jCduGZVx; arc=none smtp.client-ip=209.85.216.43 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=gmail.com Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=gmail.com Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=gmail.com header.i=@gmail.com header.b="jCduGZVx" Received: by mail-pj1-f43.google.com with SMTP id 98e67ed59e1d1-34f2a0c4574so3728745a91.1 for ; Sun, 01 Feb 2026 10:17:07 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20230601; t=1769969827; x=1770574627; darn=vger.kernel.org; h=content-transfer-encoding:mime-version:message-id:date:subject:cc :to:from:from:to:cc:subject:date:message-id:reply-to; bh=ujk5k65rRpax7qPZizdIUInwgoyZVajK00HSdGaFW4A=; b=jCduGZVxIkW4NcfG4AgGYnKp/jAFY2qXs60z05koxHd+ij7FqJ+V4Xw5Dt7vQasHPH OicIOCjXA8fz2bYAX3cWNAIgg83Jh1k1xybwq7OlzuXkkPK5x+qYrQUndnx8ubqjF11q kQke8sYxsJbJD2hoKBquMLyy+Wu+VJEj//5ujx4WyWrfNUcVtdaODHrAAYKUnGcK+qBu X29fIg3gVksGRprxnirU3DWC2dxbSSrraA50uqIUwG8OBW6Rg5Go6gxJy0yfoJmMfV3g bg7mJe+gcf9meT0X4B+s8vz/P2ZZa7AW8yysNJRtRKERHbLRATP5WSNFRljt/9W6KULG +pbA== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1769969827; x=1770574627; h=content-transfer-encoding:mime-version:message-id:date:subject:cc :to:from:x-gm-gg:x-gm-message-state:from:to:cc:subject:date :message-id:reply-to; bh=ujk5k65rRpax7qPZizdIUInwgoyZVajK00HSdGaFW4A=; b=JE9s/AumD77fWaf5Lnoh9o5XcuqwGvm7VlC6Hoh3jJiiu0xfL8P4uZgLRfMD5U1wR+ 7RKHkulP+2fi+jJjDqxMHxG8gbc4itttiXmxQvFFvwkb7W9Yj6sUcD1lyl8AjtGx/gu9 EsnCevodAC2BSuXHlIZsjs3EYjWsyoIlikwUVk1Qbjw1c5EyVLmaZWnZiF+frOiTfeTx PRc4K5Kdr/SHGw74QMyF2fQZ+GjXedC8Xb3W6UWPg13PmsiEJ4wf/jcnqmbxdtzBpySY 9jHb+qdWJ+nYxluTNhiLNep2qri6XD1r+jw/rCNU3hub2rgtVqEXPZmEIULr4oq6cvNc zeng== X-Gm-Message-State: AOJu0YyLABaDjnySHTM2zektpwQjrMwspYdfI1TUTjJFSDHXMq7DxKDv KbLt4YFBSn7iOkn8fUHbICzKu8LJSmUtUlGapWLRkinkE+K8mMN7WHA7 X-Gm-Gg: AZuq6aKTUaLPqFT3dfABpCqNQ9WzVfNwv5S6B5RGCwl3Onvt6guhbg99rR22He6Ja1/ SKZ4GKj0LXverKMlXi+nN+SRD2bUYpLRVOoxSo5EapTZJIEbs+n7bXbuoOMcxLX9iCEc4KyEsdu VWg3fbZd1c+1+ZyxmZJMKhv6CX3nlBcCn3feiFD+T2x4gY3KyZQYWNQdeLUT3B+7Vp9QIw/+hVG NUO7U1PedDBOPDYlO7+svJ0hqSEzvOuRaRxwQygctOtVmiw6opCBNCHFVWan06//z+Z90AhaH/6 kNkEWsVkXRBaDOQdlwT3yl8F3G3nu1ChUV3NfYIxHr0yqVkQzPAuar8pbM6E7uQLOS4SCo5m1Ij 5s4lT4C8J0/tZ9Vncp6BcCqrIvUW/dSQ0NJkfNTE1e96TFriAdToF0qr2NxaNWywE1mhxeQdNVr a4FChaPDba0PTDSoQY X-Received: by 2002:a17:90b:3ccd:b0:352:bd7c:ddbd with SMTP id 98e67ed59e1d1-3543b38af32mr9508501a91.23.1769969826957; Sun, 01 Feb 2026 10:17:06 -0800 (PST) Received: from gmail.com ([2409:4081:2d1d:b4be:89d5:e086:c91c:ec66]) by smtp.gmail.com with ESMTPSA id 98e67ed59e1d1-3543bab8025sm3192608a91.0.2026.02.01.10.16.59 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Sun, 01 Feb 2026 10:17:06 -0800 (PST) From: Sumeet Pawnikar To: rafael@kernel.org, robert.moore@intel.com, lenb@kernel.org, linux-acpi@vger.kernel.org, acpica-devel@lists.linux.dev Cc: linux-kernel@vger.kernel.org, sumeet4linux@gmail.com Subject: [PATCH] tools/power/acpi: Replace strcpy/strcat with snprintf in osunixdir.c Date: Sun, 1 Feb 2026 23:46:20 +0530 Message-ID: <20260201181620.4964-1-sumeet4linux@gmail.com> X-Mailer: git-send-email 2.43.0 Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 Content-Transfer-Encoding: quoted-printable Content-Type: text/plain; charset="utf-8" Replace unsafe strcpy() and strcat() calls with snprintf() in osunixdir.c to prevent potential buffer overflow vulnerabilities when constructing file paths. The snprintf() function performs automatic bounds checking to ensure the destination buffer is not overflowed. No functional change. Signed-off-by: Sumeet Pawnikar --- .../power/acpi/os_specific/service_layers/osunixdir.c | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/tools/power/acpi/os_specific/service_layers/osunixdir.c b/tool= s/power/acpi/os_specific/service_layers/osunixdir.c index b9bb83116549..5dc960c6b376 100644 --- a/tools/power/acpi/os_specific/service_layers/osunixdir.c +++ b/tools/power/acpi/os_specific/service_layers/osunixdir.c @@ -113,9 +113,8 @@ char *acpi_os_get_next_filename(void *dir_handle) return (NULL); } =20 - strcpy(temp_str, external_info->dir_pathname); - strcat(temp_str, "/"); - strcat(temp_str, dir_entry->d_name); + snprintf(temp_str, str_len, "%s/%s", + external_info->dir_pathname, dir_entry->d_name); =20 err =3D stat(temp_str, &temp_stat); if (err =3D=3D -1) { @@ -137,8 +136,9 @@ char *acpi_os_get_next_filename(void *dir_handle) =20 /* copy to a temp buffer because dir_entry struct is on the stack */ =20 - strcpy(external_info->temp_buffer, - dir_entry->d_name); + snprintf(external_info->temp_buffer, + sizeof(external_info->temp_buffer), + "%s", dir_entry->d_name); return (external_info->temp_buffer); } } --=20 2.43.0