* [PATCH net-next] drivers/net/bonding: User strscpy() to copy device name
@ 2026-06-06 20:26 david.laight.linux
2026-06-08 20:23 ` Jakub Kicinski
0 siblings, 1 reply; 6+ messages in thread
From: david.laight.linux @ 2026-06-06 20:26 UTC (permalink / raw)
To: Kees Cook, linux-hardening, Arnd Bergmann, linux-kernel, netdev
Cc: Andrew Lunn, David S. Miller, Eric Dumazet, Jakub Kicinski,
Jay Vosburgh, Paolo Abeni, David Laight
From: David Laight <david.laight.linux@gmail.com>
Signed-off-by: David Laight <david.laight.linux@gmail.com>
---
This is one of a group of patches that remove potentially unbounded
strcpy() calls.
They are mostly replaced by strscpy() or, when strlen() has just been
called, with memcpy() (usually including the '\0').
Calls with copy string literals into arrays are left unchanged.
They are safe and easily detected as such.
The changes were made by getting the compiler to detect the calls and
then fixing the code by hand.
Note that all the changes are only compile tested.
Some Makefiles were changed to allow files to contain strcpy().
As well as 'difficult to fix' files, this included 'show' functions
as they really need to use sysfs_emit() or seq_printf().
All the patches are being sent individually to avoid very long cc lists.
Apologies for the terse commit messages and likely unexpected tags.
(There are about 100 patches in total.)
drivers/net/bonding/bond_main.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/drivers/net/bonding/bond_main.c b/drivers/net/bonding/bond_main.c
index af82a3df2c5d..76ca61cad875 100644
--- a/drivers/net/bonding/bond_main.c
+++ b/drivers/net/bonding/bond_main.c
@@ -1792,7 +1792,7 @@ static void bond_fill_ifbond(struct bonding *bond, struct ifbond *info)
static void bond_fill_ifslave(struct slave *slave, struct ifslave *info)
{
- strcpy(info->slave_name, slave->dev->name);
+ strscpy(info->slave_name, slave->dev->name);
info->link = slave->link;
info->state = bond_slave_state(slave);
info->link_failure_count = slave->link_failure_count;
--
2.39.5
^ permalink raw reply related [flat|nested] 6+ messages in thread* Re: [PATCH net-next] drivers/net/bonding: User strscpy() to copy device name
2026-06-06 20:26 [PATCH net-next] drivers/net/bonding: User strscpy() to copy device name david.laight.linux
@ 2026-06-08 20:23 ` Jakub Kicinski
2026-06-08 21:07 ` David Laight
0 siblings, 1 reply; 6+ messages in thread
From: Jakub Kicinski @ 2026-06-08 20:23 UTC (permalink / raw)
To: david.laight.linux
Cc: Kees Cook, linux-hardening, Arnd Bergmann, linux-kernel, netdev,
Andrew Lunn, David S. Miller, Eric Dumazet, Jay Vosburgh,
Paolo Abeni
On Sat, 6 Jun 2026 21:26:07 +0100 david.laight.linux@gmail.com wrote:
> From: David Laight <david.laight.linux@gmail.com>
Could you be so very kind to read the automated message you received
when you posted this?
^ permalink raw reply [flat|nested] 6+ messages in thread
* Re: [PATCH net-next] drivers/net/bonding: User strscpy() to copy device name
2026-06-08 20:23 ` Jakub Kicinski
@ 2026-06-08 21:07 ` David Laight
2026-06-08 21:18 ` Jakub Kicinski
0 siblings, 1 reply; 6+ messages in thread
From: David Laight @ 2026-06-08 21:07 UTC (permalink / raw)
To: Jakub Kicinski
Cc: Kees Cook, linux-hardening, Arnd Bergmann, linux-kernel, netdev,
Andrew Lunn, David S. Miller, Eric Dumazet, Jay Vosburgh,
Paolo Abeni
On Mon, 8 Jun 2026 13:23:11 -0700
Jakub Kicinski <kuba@kernel.org> wrote:
> On Sat, 6 Jun 2026 21:26:07 +0100 david.laight.linux@gmail.com wrote:
> > From: David Laight <david.laight.linux@gmail.com>
>
> Could you be so very kind to read the automated message you received
> when you posted this?
Looks like I managed to send two patches for files in the same directory
that contained equivalent fixes.
I think I should be able to merge the patch emails into one and send
as a single V2 patch that contains both changes.
David
^ permalink raw reply [flat|nested] 6+ messages in thread
* Re: [PATCH net-next] drivers/net/bonding: User strscpy() to copy device name
2026-06-08 21:07 ` David Laight
@ 2026-06-08 21:18 ` Jakub Kicinski
2026-06-08 21:40 ` David Laight
0 siblings, 1 reply; 6+ messages in thread
From: Jakub Kicinski @ 2026-06-08 21:18 UTC (permalink / raw)
To: David Laight
Cc: Kees Cook, linux-hardening, Arnd Bergmann, linux-kernel, netdev,
Andrew Lunn, David S. Miller, Eric Dumazet, Jay Vosburgh,
Paolo Abeni
On Mon, 8 Jun 2026 22:07:10 +0100 David Laight wrote:
> On Mon, 8 Jun 2026 13:23:11 -0700
> Jakub Kicinski <kuba@kernel.org> wrote:
>
> > On Sat, 6 Jun 2026 21:26:07 +0100 david.laight.linux@gmail.com wrote:
> > > From: David Laight <david.laight.linux@gmail.com>
> >
> > Could you be so very kind to read the automated message you received
> > when you posted this?
>
> Looks like I managed to send two patches for files in the same directory
> that contained equivalent fixes.
>
> I think I should be able to merge the patch emails into one and send
> as a single V2 patch that contains both changes.
Not what I asked you.
You seem to be following the ML yet you excreted a bunch of incorrectly
formatted and likely useless patches. Read the email. Start with one
or two submissions at a time.
^ permalink raw reply [flat|nested] 6+ messages in thread
* Re: [PATCH net-next] drivers/net/bonding: User strscpy() to copy device name
2026-06-08 21:18 ` Jakub Kicinski
@ 2026-06-08 21:40 ` David Laight
0 siblings, 0 replies; 6+ messages in thread
From: David Laight @ 2026-06-08 21:40 UTC (permalink / raw)
To: Jakub Kicinski
Cc: Kees Cook, linux-hardening, Arnd Bergmann, linux-kernel, netdev,
Andrew Lunn, David S. Miller, Eric Dumazet, Jay Vosburgh,
Paolo Abeni
On Mon, 8 Jun 2026 14:18:22 -0700
Jakub Kicinski <kuba@kernel.org> wrote:
> On Mon, 8 Jun 2026 22:07:10 +0100 David Laight wrote:
> > On Mon, 8 Jun 2026 13:23:11 -0700
> > Jakub Kicinski <kuba@kernel.org> wrote:
> >
> > > On Sat, 6 Jun 2026 21:26:07 +0100 david.laight.linux@gmail.com wrote:
> > > > From: David Laight <david.laight.linux@gmail.com>
> > >
> > > Could you be so very kind to read the automated message you received
> > > when you posted this?
> >
> > Looks like I managed to send two patches for files in the same directory
> > that contained equivalent fixes.
> >
> > I think I should be able to merge the patch emails into one and send
> > as a single V2 patch that contains both changes.
>
> Not what I asked you.
>
> You seem to be following the ML yet you excreted a bunch of incorrectly
> formatted and likely useless patches. Read the email. Start with one
> or two submissions at a time.
I got an email containing:
It looks like you reposted this series less than 24 hours after
the previous version. Please allow at least 24 hours between
versions so that reviewers across all time zones have a chance
to look at the previous version.
That happened because patches 0013 and 0014 (of 0089) ended up with the
same subject line when I generated one patch for each affected file.
Pretty much all the patches replace strcpy() with either strscpy()
or (when strlen() has already been done) memcpy().
-- David
^ permalink raw reply [flat|nested] 6+ messages in thread
* [PATCH net-next] drivers/net/bonding: User strscpy() to copy device name
@ 2026-06-06 20:26 david.laight.linux
0 siblings, 0 replies; 6+ messages in thread
From: david.laight.linux @ 2026-06-06 20:26 UTC (permalink / raw)
To: Kees Cook, linux-hardening, Arnd Bergmann, linux-kernel, netdev
Cc: Andrew Lunn, David S. Miller, Eric Dumazet, Jakub Kicinski,
Jay Vosburgh, Paolo Abeni, David Laight
From: David Laight <david.laight.linux@gmail.com>
Signed-off-by: David Laight <david.laight.linux@gmail.com>
---
This is one of a group of patches that remove potentially unbounded
strcpy() calls.
They are mostly replaced by strscpy() or, when strlen() has just been
called, with memcpy() (usually including the '\0').
Calls with copy string literals into arrays are left unchanged.
They are safe and easily detected as such.
The changes were made by getting the compiler to detect the calls and
then fixing the code by hand.
Note that all the changes are only compile tested.
Some Makefiles were changed to allow files to contain strcpy().
As well as 'difficult to fix' files, this included 'show' functions
as they really need to use sysfs_emit() or seq_printf().
All the patches are being sent individually to avoid very long cc lists.
Apologies for the terse commit messages and likely unexpected tags.
(There are about 100 patches in total.)
drivers/net/bonding/bond_options.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/drivers/net/bonding/bond_options.c b/drivers/net/bonding/bond_options.c
index 7380cc4ee75a..c57b7d6af043 100644
--- a/drivers/net/bonding/bond_options.c
+++ b/drivers/net/bonding/bond_options.c
@@ -1525,7 +1525,7 @@ static int bond_option_primary_set(struct bonding *bond,
if (strncmp(slave->dev->name, primary, IFNAMSIZ) == 0) {
slave_dbg(bond->dev, slave->dev, "Setting as primary slave\n");
rcu_assign_pointer(bond->primary_slave, slave);
- strcpy(bond->params.primary, slave->dev->name);
+ strscpy(bond->params.primary, slave->dev->name);
bond->force_primary = true;
bond_select_active_slave(bond);
goto out;
--
2.39.5
^ permalink raw reply related [flat|nested] 6+ messages in thread
end of thread, other threads:[~2026-06-08 21:40 UTC | newest]
Thread overview: 6+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2026-06-06 20:26 [PATCH net-next] drivers/net/bonding: User strscpy() to copy device name david.laight.linux
2026-06-08 20:23 ` Jakub Kicinski
2026-06-08 21:07 ` David Laight
2026-06-08 21:18 ` Jakub Kicinski
2026-06-08 21:40 ` David Laight
-- strict thread matches above, loose matches on Subject: below --
2026-06-06 20:26 david.laight.linux
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox