arch/mips/loongson64/boardinfo.c | 9 +++++---- 1 file changed, 5 insertions(+), 4 deletions(-)
strcpy() is deprecated; use strscpy_pad() instead.
strscpy_pad() already copies the source strings and zero-pads the tail
of the destination buffers, making the explicit initializations to zero
redundant. Remove them to ensure the buffers are only written to once.
No functional changes intended.
Link: https://github.com/KSPP/linux/issues/88
Signed-off-by: Thorsten Blum <thorsten.blum@linux.dev>
---
arch/mips/loongson64/boardinfo.c | 9 +++++----
1 file changed, 5 insertions(+), 4 deletions(-)
diff --git a/arch/mips/loongson64/boardinfo.c b/arch/mips/loongson64/boardinfo.c
index 8bb275c93ac0..827ab94b98b3 100644
--- a/arch/mips/loongson64/boardinfo.c
+++ b/arch/mips/loongson64/boardinfo.c
@@ -1,17 +1,18 @@
// SPDX-License-Identifier: GPL-2.0
#include <linux/kobject.h>
+#include <linux/string.h>
#include <boot_param.h>
static ssize_t boardinfo_show(struct kobject *kobj,
struct kobj_attribute *attr, char *buf)
{
- char board_manufacturer[64] = {0};
+ char board_manufacturer[64];
char *tmp_board_manufacturer = board_manufacturer;
- char bios_vendor[64] = {0};
+ char bios_vendor[64];
char *tmp_bios_vendor = bios_vendor;
- strcpy(board_manufacturer, eboard->name);
- strcpy(bios_vendor, einter->description);
+ strscpy_pad(board_manufacturer, eboard->name);
+ strscpy_pad(bios_vendor, einter->description);
return sprintf(buf,
"Board Info\n"
--
2.50.1
On Tue, Aug 19, 2025 at 12:23:19PM +0200, Thorsten Blum wrote:
> strcpy() is deprecated; use strscpy_pad() instead.
>
> strscpy_pad() already copies the source strings and zero-pads the tail
> of the destination buffers, making the explicit initializations to zero
> redundant. Remove them to ensure the buffers are only written to once.
>
> No functional changes intended.
>
> Link: https://github.com/KSPP/linux/issues/88
> Signed-off-by: Thorsten Blum <thorsten.blum@linux.dev>
> ---
> arch/mips/loongson64/boardinfo.c | 9 +++++----
> 1 file changed, 5 insertions(+), 4 deletions(-)
>
> diff --git a/arch/mips/loongson64/boardinfo.c b/arch/mips/loongson64/boardinfo.c
> index 8bb275c93ac0..827ab94b98b3 100644
> --- a/arch/mips/loongson64/boardinfo.c
> +++ b/arch/mips/loongson64/boardinfo.c
> @@ -1,17 +1,18 @@
> // SPDX-License-Identifier: GPL-2.0
> #include <linux/kobject.h>
> +#include <linux/string.h>
> #include <boot_param.h>
>
> static ssize_t boardinfo_show(struct kobject *kobj,
> struct kobj_attribute *attr, char *buf)
> {
> - char board_manufacturer[64] = {0};
> + char board_manufacturer[64];
> char *tmp_board_manufacturer = board_manufacturer;
> - char bios_vendor[64] = {0};
> + char bios_vendor[64];
> char *tmp_bios_vendor = bios_vendor;
>
> - strcpy(board_manufacturer, eboard->name);
> - strcpy(bios_vendor, einter->description);
> + strscpy_pad(board_manufacturer, eboard->name);
> + strscpy_pad(bios_vendor, einter->description);
>
> return sprintf(buf,
> "Board Info\n"
> --
> 2.50.1
applied to mips-next.
Thomas.
--
Crap can work. Given enough thrust pigs will fly, but it's not necessarily a
good idea. [ RFC1925, 2.3 ]
© 2016 - 2026 Red Hat, Inc.