Re: [PATCH] net/smc: replace strncpy with strscpy
From: Simon Horman <horms@kernel.org>
Date: 2025-06-18 10:50:44
Also in:
linux-kernel-mentees, linux-rdma, linux-s390, lkml
From: Simon Horman <horms@kernel.org>
Date: 2025-06-18 10:50:44
Also in:
linux-kernel-mentees, linux-rdma, linux-s390, lkml
On Tue, Jun 17, 2025 at 05:55:12PM +0530, Pranav Tyagi wrote:
Replace the deprecated strncpy() with strscpy() as the destination buffer should be NUL-terminated and does not require any trailing NUL-padding. Signed-off-by: Pranav Tyagi <redacted> --- net/smc/smc_pnet.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-)diff --git a/net/smc/smc_pnet.c b/net/smc/smc_pnet.c index b391c2ef463f..b70e1f3179c5 100644 --- a/net/smc/smc_pnet.c +++ b/net/smc/smc_pnet.c@@ -370,7 +370,7 @@ static int smc_pnet_add_eth(struct smc_pnettable *pnettable, struct net *net, goto out_put; new_pe->type = SMC_PNET_ETH; memcpy(new_pe->pnet_name, pnet_name, SMC_MAX_PNETID_LEN); - strncpy(new_pe->eth_name, eth_name, IFNAMSIZ); + strscpy(new_pe->eth_name, eth_name, IFNAMSIZ);
Hi Pranav, I think that because strscpy always results in a NULL terminated string the length argument can be increased by one to IFNAMSIZ + 1, matching the size of the destination. But I also think that we can handle this automatically by switching to the two-argument version of strscpy() because the destination is an array. strscpy(new_pe->eth_name, eth_name);
rc = -EEXIST; new_netdev = true; mutex_lock(&pnettable->lock); -- 2.49.0
-- pw-bot: changes-requested