Re: [PATCH] staging: greybus: documentation: replace strncpy() with strscpy_pad()

From: Vivek BalachandharTN

Date: Tue Oct 14 2025 - 10:01:40 EST


Yes, Dan. Nice catch. Building it with below sample change:

memset(&intf_load.firmware_tag, 0, GB_FIRMWARE_U_TAG_MAX_SIZE);
strncpy((char *)&intf_load.firmware_tag, firmware_tag,
        GB_FIRMWARE_U_TAG_MAX_SIZE - 1);

If it works, will send another patch.

Best, Vivek.


On 2025-10-14 9:53 a.m., Dan Carpenter wrote:
On Tue, Oct 14, 2025 at 01:41:48PM +0000, Vivek BalachandharTN wrote:
strncpy() does not guarantee NUL-termination and is deprecated for
NUL-terminated strings. Replace it with strscpy_pad(), which guarantees
NUL-termination and zero-pads the remaining bytes, matching the fixed-size
firmware tag semantics.

Signed-off-by: Vivek BalachandharTN <vivek.balachandhar@xxxxxxxxx>
---
.../greybus/Documentation/firmware/firmware.c | 12 ++++++------
1 file changed, 6 insertions(+), 6 deletions(-)

diff --git a/drivers/staging/greybus/Documentation/firmware/firmware.c b/drivers/staging/greybus/Documentation/firmware/firmware.c
index 3b35ef6d4adb..deac8584841b 100644
--- a/drivers/staging/greybus/Documentation/firmware/firmware.c
+++ b/drivers/staging/greybus/Documentation/firmware/firmware.c
This is sample user space code so the strscpy_pad() isn't available. It
will break the compile.

regards,
dan carpenter