Skip to content

Commit a167242

Browse files
JustinStittkuba-moo
authored andcommitted
liquidio: replace deprecated strncpy with strscpy
`strncpy` is deprecated for use on NUL-terminated destination strings [1] and as such we should prefer more robust and less ambiguous string interfaces. NUL-padding is not required as rep_cfg is memset to 0: | memset(&rep_cfg, 0, sizeof(rep_cfg)); A suitable replacement is `strscpy` [2] due to the fact that it guarantees NUL-termination on the destination buffer without unnecessarily NUL-padding. Link: https://www.kernel.org/doc/html/latest/process/deprecated.html#strncpy-on-nul-terminated-strings [1] Link: https://manpages.debian.org/testing/linux-manual-4.8/strscpy.9.en.html [2] Link: KSPP/linux#90 Signed-off-by: Justin Stitt <justinstitt@google.com> Reviewed-by: Kees Cook <keescook@chromium.org> Link: https://lore.kernel.org/r/20231005-strncpy-drivers-net-ethernet-cavium-liquidio-lio_vf_rep-c-v1-1-92123a747780@google.com Signed-off-by: Jakub Kicinski <kuba@kernel.org>
1 parent 092b0be commit a167242

File tree

1 file changed

+2
-1
lines changed

1 file changed

+2
-1
lines changed

drivers/net/ethernet/cavium/liquidio/lio_vf_rep.c

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -638,7 +638,8 @@ lio_vf_rep_netdev_event(struct notifier_block *nb,
638638
memset(&rep_cfg, 0, sizeof(rep_cfg));
639639
rep_cfg.req_type = LIO_VF_REP_REQ_DEVNAME;
640640
rep_cfg.ifidx = vf_rep->ifidx;
641-
strncpy(rep_cfg.rep_name.name, ndev->name, LIO_IF_NAME_SIZE);
641+
strscpy(rep_cfg.rep_name.name, ndev->name,
642+
sizeof(rep_cfg.rep_name.name));
642643

643644
ret = lio_vf_rep_send_soft_command(oct, &rep_cfg,
644645
sizeof(rep_cfg), NULL, 0);

0 commit comments

Comments
 (0)