[<prev] [next>] [day] [month] [year] [list]
Message-ID: <20260201182141.5039-1-sumeet4linux@gmail.com>
Date: Sun, 1 Feb 2026 23:51:41 +0530
From: Sumeet Pawnikar <sumeet4linux@...il.com>
To: rafael@...nel.org,
robert.moore@...el.com,
lenb@...nel.org,
linux-acpi@...r.kernel.org,
acpica-devel@...ts.linux.dev
Cc: linux-kernel@...r.kernel.org,
sumeet4linux@...il.com
Subject: [PATCH] tools/power/acpi: Replace unsafe strcpy with snprintf in apdump.c
Replace unsafe strcpy() calls with snprintf() in apdump.c to prevent
potential buffer overflow vulnerabilities when handling table signatures.
The snprintf() function performs automatic bounds checking to ensure
the destination buffer is not overflowed.
No functional change.
Signed-off-by: Sumeet Pawnikar <sumeet4linux@...il.com>
---
tools/power/acpi/tools/acpidump/apdump.c | 8 +++++---
1 file changed, 5 insertions(+), 3 deletions(-)
diff --git a/tools/power/acpi/tools/acpidump/apdump.c b/tools/power/acpi/tools/acpidump/apdump.c
index 7a6223aa703c..b566f9b832f1 100644
--- a/tools/power/acpi/tools/acpidump/apdump.c
+++ b/tools/power/acpi/tools/acpidump/apdump.c
@@ -308,15 +308,17 @@ int ap_dump_table_by_name(char *signature)
/* Table signatures are expected to be uppercase */
- strcpy(local_signature, signature);
+ snprintf(local_signature, sizeof(local_signature), "%s", signature);
acpi_ut_strupr(local_signature);
/* To be friendly, handle tables whose signatures do not match the name */
if (ACPI_COMPARE_NAMESEG(local_signature, "FADT")) {
- strcpy(local_signature, ACPI_SIG_FADT);
+ snprintf(local_signature, sizeof(local_signature), "%s",
+ ACPI_SIG_FADT);
} else if (ACPI_COMPARE_NAMESEG(local_signature, "MADT")) {
- strcpy(local_signature, ACPI_SIG_MADT);
+ snprintf(local_signature, sizeof(local_signature), "%s",
+ ACPI_SIG_MADT);
}
/* Dump all instances of this signature (to handle multiple SSDTs) */
--
2.43.0
Powered by blists - more mailing lists