netdev.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
* [PATCH net-next v2] net/rds: use strscpy() to instead of strncpy()
@ 2023-01-11  6:25 yang.yang29
  2023-01-13  5:17 ` Jakub Kicinski
  0 siblings, 1 reply; 4+ messages in thread
From: yang.yang29 @ 2023-01-11  6:25 UTC (permalink / raw)
  To: santosh.shilimkar, kuba
  Cc: davem, edumazet, pabeni, netdev, linux-rdma, rds-devel,
	linux-kernel, xu.panda, yang.yang29

From: Xu Panda <xu.panda@zte.com.cn>

The implementation of strscpy() is more robust and safer.
That's now the recommended way to copy NUL-terminated strings.

Signed-off-by: Xu Panda <xu.panda@zte.com.cn>
Signed-off-by: Yang Yang <yang.yang29@zte.com.cn>
---
change for v2
 - Use the returns of strscpy to make the copy and the preceding 
BUG_ON() together.Thanks to Jakub Kicinski. 
---
 net/rds/stats.c | 4 +---
 1 file changed, 1 insertion(+), 3 deletions(-)

diff --git a/net/rds/stats.c b/net/rds/stats.c
index 9e87da43c004..7018c67418f5 100644
--- a/net/rds/stats.c
+++ b/net/rds/stats.c
@@ -88,9 +88,7 @@ void rds_stats_info_copy(struct rds_info_iterator *iter,
 	size_t i;

 	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';
+		BUG_ON(strscpy(ctr.name, names[i], sizeof(ctr.name)) < 0);
 		ctr.value = values[i];

 		rds_info_copy(iter, &ctr, sizeof(ctr));
-- 
2.15.2

^ permalink raw reply related	[flat|nested] 4+ messages in thread

end of thread, other threads:[~2023-01-13 19:28 UTC | newest]

Thread overview: 4+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2023-01-11  6:25 [PATCH net-next v2] net/rds: use strscpy() to instead of strncpy() yang.yang29
2023-01-13  5:17 ` Jakub Kicinski
2023-01-13  7:13   ` yang.yang29
2023-01-13 19:28     ` Jakub Kicinski

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).