]> git.ipfire.org Git - thirdparty/kernel/linux.git/commitdiff
ACPICA: Unbreak tools build after switching over to strscpy_pad()
authorRafael J. Wysocki <rafael.j.wysocki@intel.com>
Mon, 22 Jun 2026 18:23:09 +0000 (20:23 +0200)
committerRafael J. Wysocki <rafael.j.wysocki@intel.com>
Wed, 24 Jun 2026 13:02:29 +0000 (15:02 +0200)
Commit 97f7d3f9c9ac ("ACPICA: Replace strncpy() with strscpy_pad() in
acpi_ut_safe_strncpy()") switched over the ACPICA code in the kernel to
using strscpy_pad() instead of a combination of strncpy() and manual
NUL-termination of the destination string, but it overlooked the fact
that tools also use the code in question and strscpy_pad() is not
defined in those builds.

Address that by using the original ACPICA code in non-kernel builds.

Fixes: 97f7d3f9c9ac ("ACPICA: Replace strncpy() with strscpy_pad() in acpi_ut_safe_strncpy()")
Reported-by: Jiri Slaby <jirislaby@kernel.org>
Closes: https://lore.kernel.org/all/79e9e913-0fb1-4110-804b-c3b5d0edafe4@kernel
Signed-off-by: Rafael J. Wysocki <rafael.j.wysocki@intel.com>
Reviewed-by: Kees Cook <kees@kernel.org>
[ rjw: Fixed up the number of added code lines ]
Link: https://patch.msgid.link/12923581.O9o76ZdvQC@rafael.j.wysocki
Signed-off-by: Rafael J. Wysocki <rafael.j.wysocki@intel.com>
drivers/acpi/acpica/utnonansi.c

index 3a7952be654579cfceb8c491b3f5dcdb518190e1..93867ad7f3421f02662448d8902c05e70f4457ef 100644 (file)
@@ -168,7 +168,16 @@ void acpi_ut_safe_strncpy(char *dest, char *source, acpi_size dest_size)
 {
        /* Always terminate destination string */
 
+#ifdef __KERNEL__
        strscpy_pad(dest, source, dest_size);
+#else
+       /*
+        * strscpy_pad() is not defined in ACPICA tools builds, so use strncpy()
+        * and directly NUL-terminate the destination string in that case.
+        */
+       strncpy(dest, source, dest_size);
+       dest[dest_size - 1] = 0;
+#endif
 }
 
 #endif