From: Simon Horman <horms@kernel.org>
To: Baris Can Goral <goralbaris@gmail.com>
Cc: davem@davemloft.net, edumazet@google.com, kuba@kernel.org,
pabeni@redhat.com, netdev@vger.kernel.org,
allison.henderson@oracle.com, skhan@linuxfoundation.org,
linux-rdma@vger.kernel.org
Subject: Re: [PATCH] net: rds transform strncpy to strscpy
Date: Tue, 8 Apr 2025 19:22:03 +0100 [thread overview]
Message-ID: <20250408182203.GH395307@horms.kernel.org> (raw)
In-Reply-To: <20250407183052.8763-1-goralbaris@gmail.com>
+ linux-rdma@vger.kernel.org
Hi Baris,
On Mon, Apr 07, 2025 at 09:30:53PM +0300, Baris Can Goral wrote:
> Hi,
It's nice to be friendly, but I don't think a salutation
belongs in a commit message. (Please remove the line above.)
> The strncpy() function is actively dangerous to use since it may not
> NULL-terminate the destination string,resulting in potential memory
Space after the comma (,) please.
> content exposures, unbounded reads, or crashes.
I think there should be a blank like before the Link tag.
> Link:https://github.com/KSPP/linux/issues/90
But not between it and other tags.
Also, there should be a space after "Link:"
Link: https://github.com/KSPP/linux/issues/90
> Signed-off-by: Baris Can Goral <goralbaris@gmail.com>
> ---
> net/rds/connection.c | 4 ++--
> net/rds/stats.c | 2 +-
> 2 files changed, 3 insertions(+), 3 deletions(-)
>
> diff --git a/net/rds/connection.c b/net/rds/connection.c
> index c749c5525b40..fb2f14a1279a 100644
> --- a/net/rds/connection.c
> +++ b/net/rds/connection.c
> @@ -749,7 +749,7 @@ static int rds_conn_info_visitor(struct rds_conn_path *cp, void *buffer)
> cinfo->laddr = conn->c_laddr.s6_addr32[3];
> cinfo->faddr = conn->c_faddr.s6_addr32[3];
> cinfo->tos = conn->c_tos;
> - strncpy(cinfo->transport, conn->c_trans->t_name,
> + strscpy(cinfo->transport, conn->c_trans->t_name,
> sizeof(cinfo->transport));
I agree that strscpy() is appropriate as we want null termination
but not padding.
Because the destination, cinfo->transport, is an array I believe
we can omit passing the size argument to strscpy, like this:
strscpy(cinfo->transport, conn->c_trans->t_name);
Link: https://docs.kernel.org/core-api/kernel-api.html#c.strscpy
> cinfo->flags = 0;
>
> @@ -775,7 +775,7 @@ static int rds6_conn_info_visitor(struct rds_conn_path *cp, void *buffer)
> cinfo6->next_rx_seq = cp->cp_next_rx_seq;
> cinfo6->laddr = conn->c_laddr;
> cinfo6->faddr = conn->c_faddr;
> - strncpy(cinfo6->transport, conn->c_trans->t_name,
> + strscpy(cinfo6->transport, conn->c_trans->t_name,
> sizeof(cinfo6->transport));
> cinfo6->flags = 0;
Ditto.
>
> diff --git a/net/rds/stats.c b/net/rds/stats.c
> index 9e87da43c004..63c34dbdf97f 100644
> --- a/net/rds/stats.c
> +++ b/net/rds/stats.c
> @@ -89,7 +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);
> + strscpy(ctr.name, names[i], sizeof(ctr.name) - 1);
> ctr.name[sizeof(ctr.name) - 1] = '\0';
> ctr.value = values[i];
This issue appears to have been addressed by
commit c451715d78e3 ("net/rds: Replace deprecated strncpy() with strscpy_pad()")
As a Networking patch please make sure it is based on the net-next tree and
targeted at that tree like this:
Subject: [PATCH net-next v2] ...
Or the net tree if it is a big fix, which this patch isn't.
Please consider posting a v2 patch to address the above.
And please consider CCing linux-rdma@vger.kernel.org on v2.
--
pw-bot: changes-requested
next prev parent reply other threads:[~2025-04-08 18:22 UTC|newest]
Thread overview: 11+ messages / expand[flat|nested] mbox.gz Atom feed top
2025-04-07 18:30 [PATCH] net: rds transform strncpy to strscpy Baris Can Goral
2025-04-08 18:22 ` Simon Horman [this message]
2025-04-08 21:21 ` [PATCH net-next v2] Replace strncpy with strscpy Baris Can Goral
2025-05-17 18:12 ` goralbaris
2025-05-18 9:00 ` Simon Horman
2025-05-18 19:53 ` [PATCH v3 net-next: rds] replace strncpy with strscpy_pad goralbaris
2025-05-19 7:01 ` Michal Swiatkowski
2025-05-19 12:51 ` [PATCH v4 " Baris Can Goral
2025-05-19 21:15 ` Allison Henderson
2025-05-20 16:23 ` [PATCH v5 " Baris Can Goral
2025-05-20 21:13 ` Zhu Yanjun
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=20250408182203.GH395307@horms.kernel.org \
--to=horms@kernel.org \
--cc=allison.henderson@oracle.com \
--cc=davem@davemloft.net \
--cc=edumazet@google.com \
--cc=goralbaris@gmail.com \
--cc=kuba@kernel.org \
--cc=linux-rdma@vger.kernel.org \
--cc=netdev@vger.kernel.org \
--cc=pabeni@redhat.com \
--cc=skhan@linuxfoundation.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.