Re: [PATCH net-next] net/rds: Replace deprecated strncpy() with strscpy_pad()
From: Allison Henderson
Date: Thu Feb 20 2025 - 13:50:16 EST
On Thu, 2025-02-20 at 11:07 -0700, Allison Henderson wrote:
> On Wed, 2025-02-19 at 23:47 +0100, Thorsten Blum wrote:
> > strncpy() is deprecated for NUL-terminated destination buffers. Use
> > strscpy_pad() instead and remove the manual NUL-termination.
> >
> > Compile-tested only.
I went ahead and tested this for you, and it looks fine. So, you can go ahead and remove the "Compiled-tested only" and
add:
Tested-by: Allison Henderson <allison.henderson@xxxxxxxxxx>
Thank you!
Allison
> >
> > Link: https://urldefense.com/v3/__https://github.com/KSPP/linux/issues/90__;!!ACWV5N9M2RV99hQ!MpqMAmj6IIyu7Vj4ddfEGJlJY4rVrJL_g8etOQsHC7pdjZO77P7aOqJe8_JTFwBzZ6tciUDrbb2CjXWJMjdEMJGtpoeBfHU8qw$
> > Cc: linux-hardening@xxxxxxxxxxxxxxx
> > Signed-off-by: Thorsten Blum <thorsten.blum@xxxxxxxxx>
> > ---
> > net/rds/stats.c | 3 +--
> > 1 file changed, 1 insertion(+), 2 deletions(-)
> >
> > diff --git a/net/rds/stats.c b/net/rds/stats.c
> > index 9e87da43c004..cb2e3d2cdf73 100644
> > --- a/net/rds/stats.c
> > +++ b/net/rds/stats.c
> > @@ -89,8 +89,7 @@ void rds_stats_info_copy(struct rds_info_iterator *iter,
> >
> > for (i = 0; i < nr; i++) {
> > BUG_ON(strlen(names[i]) >= sizeof(ctr.name));
> > - strncpy(ctr.name, names[i], sizeof(ctr.name) - 1);
> > - ctr.name[sizeof(ctr.name) - 1] = '\0';
> > + strscpy_pad(ctr.name, names[i]);
> > ctr.value = values[i];
> >
> Looks ok to me. Thanks Thorsten!
> Reviewed-by: Allison Henderson <allison.henderson@xxxxxxxxxx>
>
> > rds_info_copy(iter, &ctr, sizeof(ctr));
>