* [PATCH] net: dsa: mt7530: replace deprecated strncpy with ethtool_sprintf
@ 2023-10-09 18:29 Justin Stitt
2023-10-09 18:31 ` Kees Cook
` (5 more replies)
0 siblings, 6 replies; 8+ messages in thread
From: Justin Stitt @ 2023-10-09 18:29 UTC (permalink / raw)
To: Arınç ÜNAL, Daniel Golle, Landen Chao,
DENG Qingfang, Sean Wang, Andrew Lunn, Florian Fainelli,
Vladimir Oltean, David S. Miller, Eric Dumazet, Jakub Kicinski,
Paolo Abeni, Matthias Brugger, AngeloGioacchino Del Regno
Cc: netdev, linux-kernel, linux-arm-kernel, linux-mediatek,
linux-hardening, Justin Stitt
`strncpy` is deprecated for use on NUL-terminated destination strings
[1] and as such we should prefer more robust and less ambiguous string
interfaces.
ethtool_sprintf() is designed specifically for get_strings() usage.
Let's replace strncpy in favor of this more robust and easier to
understand interface.
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: https://github.com/KSPP/linux/issues/90
Cc: linux-hardening@vger.kernel.org
Signed-off-by: Justin Stitt <justinstitt@google.com>
---
Note: build-tested only.
---
drivers/net/dsa/mt7530.c | 3 +--
1 file changed, 1 insertion(+), 2 deletions(-)
diff --git a/drivers/net/dsa/mt7530.c b/drivers/net/dsa/mt7530.c
index 035a34b50f31..e00126af8318 100644
--- a/drivers/net/dsa/mt7530.c
+++ b/drivers/net/dsa/mt7530.c
@@ -836,8 +836,7 @@ mt7530_get_strings(struct dsa_switch *ds, int port, u32 stringset,
return;
for (i = 0; i < ARRAY_SIZE(mt7530_mib); i++)
- strncpy(data + i * ETH_GSTRING_LEN, mt7530_mib[i].name,
- ETH_GSTRING_LEN);
+ ethtool_sprintf(&data, "%s", mt7530_mib[i].name);
}
static void
---
base-commit: cbf3a2cb156a2c911d8f38d8247814b4c07f49a2
change-id: 20231009-strncpy-drivers-net-dsa-mt7530-c-40cad383654d
Best regards,
--
Justin Stitt <justinstitt@google.com>
^ permalink raw reply related [flat|nested] 8+ messages in thread
* Re: [PATCH] net: dsa: mt7530: replace deprecated strncpy with ethtool_sprintf
2023-10-09 18:29 [PATCH] net: dsa: mt7530: replace deprecated strncpy with ethtool_sprintf Justin Stitt
@ 2023-10-09 18:31 ` Kees Cook
2023-10-09 18:31 ` Kees Cook
` (4 subsequent siblings)
5 siblings, 0 replies; 8+ messages in thread
From: Kees Cook @ 2023-10-09 18:31 UTC (permalink / raw)
To: Justin Stitt
Cc: Arınç ÜNAL, Daniel Golle, Landen Chao,
DENG Qingfang, Sean Wang, Andrew Lunn, Florian Fainelli,
Vladimir Oltean, David S. Miller, Eric Dumazet, Jakub Kicinski,
Paolo Abeni, Matthias Brugger, AngeloGioacchino Del Regno,
netdev, linux-kernel, linux-arm-kernel, linux-mediatek,
linux-hardening
On Mon, Oct 09, 2023 at 06:29:19PM +0000, Justin Stitt wrote:
> `strncpy` is deprecated for use on NUL-terminated destination strings
> [1] and as such we should prefer more robust and less ambiguous string
> interfaces.
>
> ethtool_sprintf() is designed specifically for get_strings() usage.
> Let's replace strncpy in favor of this more robust and easier to
> understand interface.
>
> 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: https://github.com/KSPP/linux/issues/90
> Cc: linux-hardening@vger.kernel.org
> Signed-off-by: Justin Stitt <justinstitt@google.com>
Looks correct to me.
Reviewed-by: Kees Cook <keescook@chromium.org>
--
Kees Cook
^ permalink raw reply [flat|nested] 8+ messages in thread
* Re: [PATCH] net: dsa: mt7530: replace deprecated strncpy with ethtool_sprintf
2023-10-09 18:29 [PATCH] net: dsa: mt7530: replace deprecated strncpy with ethtool_sprintf Justin Stitt
2023-10-09 18:31 ` Kees Cook
@ 2023-10-09 18:31 ` Kees Cook
2023-10-09 18:56 ` Kees Cook
2023-10-09 18:34 ` Daniel Golle
` (3 subsequent siblings)
5 siblings, 1 reply; 8+ messages in thread
From: Kees Cook @ 2023-10-09 18:31 UTC (permalink / raw)
To: Justin Stitt
Cc: Arınç ÜNAL, Daniel Golle, Landen Chao,
DENG Qingfang, Sean Wang, Andrew Lunn, Florian Fainelli,
Vladimir Oltean, David S. Miller, Eric Dumazet, Jakub Kicinski,
Paolo Abeni, Matthias Brugger, AngeloGioacchino Del Regno,
netdev, linux-kernel, linux-arm-kernel, linux-mediatek,
linux-hardening
On Mon, Oct 09, 2023 at 06:29:19PM +0000, Justin Stitt wrote:
> `strncpy` is deprecated for use on NUL-terminated destination strings
> [1] and as such we should prefer more robust and less ambiguous string
> interfaces.
>
> ethtool_sprintf() is designed specifically for get_strings() usage.
> Let's replace strncpy in favor of this more robust and easier to
> understand interface.
>
> 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: https://github.com/KSPP/linux/issues/90
> Cc: linux-hardening@vger.kernel.org
> Signed-off-by: Justin Stitt <justinstitt@google.com>
> ---
> Note: build-tested only.
> ---
> drivers/net/dsa/mt7530.c | 3 +--
> 1 file changed, 1 insertion(+), 2 deletions(-)
>
> diff --git a/drivers/net/dsa/mt7530.c b/drivers/net/dsa/mt7530.c
> index 035a34b50f31..e00126af8318 100644
> --- a/drivers/net/dsa/mt7530.c
> +++ b/drivers/net/dsa/mt7530.c
> @@ -836,8 +836,7 @@ mt7530_get_strings(struct dsa_switch *ds, int port, u32 stringset,
> return;
>
> for (i = 0; i < ARRAY_SIZE(mt7530_mib); i++)
> - strncpy(data + i * ETH_GSTRING_LEN, mt7530_mib[i].name,
> - ETH_GSTRING_LEN);
> + ethtool_sprintf(&data, "%s", mt7530_mib[i].name);
Err, wait, I spoke too soon. Shouldn't this be "data" and not "&data"?
> }
>
> static void
>
> ---
> base-commit: cbf3a2cb156a2c911d8f38d8247814b4c07f49a2
> change-id: 20231009-strncpy-drivers-net-dsa-mt7530-c-40cad383654d
>
> Best regards,
> --
> Justin Stitt <justinstitt@google.com>
>
>
--
Kees Cook
^ permalink raw reply [flat|nested] 8+ messages in thread
* Re: [PATCH] net: dsa: mt7530: replace deprecated strncpy with ethtool_sprintf
2023-10-09 18:29 [PATCH] net: dsa: mt7530: replace deprecated strncpy with ethtool_sprintf Justin Stitt
2023-10-09 18:31 ` Kees Cook
2023-10-09 18:31 ` Kees Cook
@ 2023-10-09 18:34 ` Daniel Golle
2023-10-09 20:33 ` Florian Fainelli
` (2 subsequent siblings)
5 siblings, 0 replies; 8+ messages in thread
From: Daniel Golle @ 2023-10-09 18:34 UTC (permalink / raw)
To: Justin Stitt
Cc: Arınç ÜNAL, Landen Chao, DENG Qingfang, Sean Wang,
Andrew Lunn, Florian Fainelli, Vladimir Oltean, David S. Miller,
Eric Dumazet, Jakub Kicinski, Paolo Abeni, Matthias Brugger,
AngeloGioacchino Del Regno, netdev, linux-kernel,
linux-arm-kernel, linux-mediatek, linux-hardening
On Mon, Oct 09, 2023 at 06:29:19PM +0000, Justin Stitt wrote:
> `strncpy` is deprecated for use on NUL-terminated destination strings
> [1] and as such we should prefer more robust and less ambiguous string
> interfaces.
>
> ethtool_sprintf() is designed specifically for get_strings() usage.
> Let's replace strncpy in favor of this more robust and easier to
> understand interface.
>
> 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: https://github.com/KSPP/linux/issues/90
> Cc: linux-hardening@vger.kernel.org
> Signed-off-by: Justin Stitt <justinstitt@google.com>
Acked-by: Daniel Golle <daniel@makrotopia.org>
> ---
> Note: build-tested only.
> ---
> drivers/net/dsa/mt7530.c | 3 +--
> 1 file changed, 1 insertion(+), 2 deletions(-)
>
> diff --git a/drivers/net/dsa/mt7530.c b/drivers/net/dsa/mt7530.c
> index 035a34b50f31..e00126af8318 100644
> --- a/drivers/net/dsa/mt7530.c
> +++ b/drivers/net/dsa/mt7530.c
> @@ -836,8 +836,7 @@ mt7530_get_strings(struct dsa_switch *ds, int port, u32 stringset,
> return;
>
> for (i = 0; i < ARRAY_SIZE(mt7530_mib); i++)
> - strncpy(data + i * ETH_GSTRING_LEN, mt7530_mib[i].name,
> - ETH_GSTRING_LEN);
> + ethtool_sprintf(&data, "%s", mt7530_mib[i].name);
> }
>
> static void
>
> ---
> base-commit: cbf3a2cb156a2c911d8f38d8247814b4c07f49a2
> change-id: 20231009-strncpy-drivers-net-dsa-mt7530-c-40cad383654d
>
> Best regards,
> --
> Justin Stitt <justinstitt@google.com>
>
^ permalink raw reply [flat|nested] 8+ messages in thread
* Re: [PATCH] net: dsa: mt7530: replace deprecated strncpy with ethtool_sprintf
2023-10-09 18:31 ` Kees Cook
@ 2023-10-09 18:56 ` Kees Cook
0 siblings, 0 replies; 8+ messages in thread
From: Kees Cook @ 2023-10-09 18:56 UTC (permalink / raw)
To: Justin Stitt
Cc: Arınç ÜNAL, Daniel Golle, Landen Chao,
DENG Qingfang, Sean Wang, Andrew Lunn, Florian Fainelli,
Vladimir Oltean, David S. Miller, Eric Dumazet, Jakub Kicinski,
Paolo Abeni, Matthias Brugger, AngeloGioacchino Del Regno,
netdev, linux-kernel, linux-arm-kernel, linux-mediatek,
linux-hardening
On Mon, Oct 09, 2023 at 11:31:46AM -0700, Kees Cook wrote:
> On Mon, Oct 09, 2023 at 06:29:19PM +0000, Justin Stitt wrote:
> > `strncpy` is deprecated for use on NUL-terminated destination strings
> > [1] and as such we should prefer more robust and less ambiguous string
> > interfaces.
> >
> > ethtool_sprintf() is designed specifically for get_strings() usage.
> > Let's replace strncpy in favor of this more robust and easier to
> > understand interface.
> >
> > 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: https://github.com/KSPP/linux/issues/90
> > Cc: linux-hardening@vger.kernel.org
> > Signed-off-by: Justin Stitt <justinstitt@google.com>
> > ---
> > Note: build-tested only.
> > ---
> > drivers/net/dsa/mt7530.c | 3 +--
> > 1 file changed, 1 insertion(+), 2 deletions(-)
> >
> > diff --git a/drivers/net/dsa/mt7530.c b/drivers/net/dsa/mt7530.c
> > index 035a34b50f31..e00126af8318 100644
> > --- a/drivers/net/dsa/mt7530.c
> > +++ b/drivers/net/dsa/mt7530.c
> > @@ -836,8 +836,7 @@ mt7530_get_strings(struct dsa_switch *ds, int port, u32 stringset,
> > return;
> >
> > for (i = 0; i < ARRAY_SIZE(mt7530_mib); i++)
> > - strncpy(data + i * ETH_GSTRING_LEN, mt7530_mib[i].name,
> > - ETH_GSTRING_LEN);
> > + ethtool_sprintf(&data, "%s", mt7530_mib[i].name);
>
> Err, wait, I spoke too soon. Shouldn't this be "data" and not "&data"?
Ugh, ignore me. I keep forgetting that ethtool_sprintf() updates the
"data" pointer. My original Reviewed-by is fine. :)
-Kees
--
Kees Cook
^ permalink raw reply [flat|nested] 8+ messages in thread
* Re: [PATCH] net: dsa: mt7530: replace deprecated strncpy with ethtool_sprintf
2023-10-09 18:29 [PATCH] net: dsa: mt7530: replace deprecated strncpy with ethtool_sprintf Justin Stitt
` (2 preceding siblings ...)
2023-10-09 18:34 ` Daniel Golle
@ 2023-10-09 20:33 ` Florian Fainelli
2023-10-10 9:05 ` AngeloGioacchino Del Regno
2023-10-12 0:30 ` patchwork-bot+netdevbpf
5 siblings, 0 replies; 8+ messages in thread
From: Florian Fainelli @ 2023-10-09 20:33 UTC (permalink / raw)
To: Justin Stitt, Arınç ÜNAL, Daniel Golle,
Landen Chao, DENG Qingfang, Sean Wang, Andrew Lunn,
Vladimir Oltean, David S. Miller, Eric Dumazet, Jakub Kicinski,
Paolo Abeni, Matthias Brugger, AngeloGioacchino Del Regno
Cc: netdev, linux-kernel, linux-arm-kernel, linux-mediatek, linux-hardening
On 10/9/23 11:29, Justin Stitt wrote:
> `strncpy` is deprecated for use on NUL-terminated destination strings
> [1] and as such we should prefer more robust and less ambiguous string
> interfaces.
>
> ethtool_sprintf() is designed specifically for get_strings() usage.
> Let's replace strncpy in favor of this more robust and easier to
> understand interface.
>
> 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: https://github.com/KSPP/linux/issues/90
> Cc: linux-hardening@vger.kernel.org
> Signed-off-by: Justin Stitt <justinstitt@google.com>
Reviewed-by: Florian Fainelli <florian.fainelli@broadcom.com>
--
Florian
^ permalink raw reply [flat|nested] 8+ messages in thread
* Re: [PATCH] net: dsa: mt7530: replace deprecated strncpy with ethtool_sprintf
2023-10-09 18:29 [PATCH] net: dsa: mt7530: replace deprecated strncpy with ethtool_sprintf Justin Stitt
` (3 preceding siblings ...)
2023-10-09 20:33 ` Florian Fainelli
@ 2023-10-10 9:05 ` AngeloGioacchino Del Regno
2023-10-12 0:30 ` patchwork-bot+netdevbpf
5 siblings, 0 replies; 8+ messages in thread
From: AngeloGioacchino Del Regno @ 2023-10-10 9:05 UTC (permalink / raw)
To: Justin Stitt, Arınç ÜNAL, Daniel Golle,
Landen Chao, DENG Qingfang, Sean Wang, Andrew Lunn,
Florian Fainelli, Vladimir Oltean, David S. Miller, Eric Dumazet,
Jakub Kicinski, Paolo Abeni, Matthias Brugger
Cc: netdev, linux-kernel, linux-arm-kernel, linux-mediatek, linux-hardening
Il 09/10/23 20:29, Justin Stitt ha scritto:
> `strncpy` is deprecated for use on NUL-terminated destination strings
> [1] and as such we should prefer more robust and less ambiguous string
> interfaces.
>
> ethtool_sprintf() is designed specifically for get_strings() usage.
> Let's replace strncpy in favor of this more robust and easier to
> understand interface.
>
> 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: https://github.com/KSPP/linux/issues/90
> Cc: linux-hardening@vger.kernel.org
> Signed-off-by: Justin Stitt <justinstitt@google.com>
Reviewed-by: AngeloGioacchino Del Regno <angelogioacchino.delregno@collabora.com>
^ permalink raw reply [flat|nested] 8+ messages in thread
* Re: [PATCH] net: dsa: mt7530: replace deprecated strncpy with ethtool_sprintf
2023-10-09 18:29 [PATCH] net: dsa: mt7530: replace deprecated strncpy with ethtool_sprintf Justin Stitt
` (4 preceding siblings ...)
2023-10-10 9:05 ` AngeloGioacchino Del Regno
@ 2023-10-12 0:30 ` patchwork-bot+netdevbpf
5 siblings, 0 replies; 8+ messages in thread
From: patchwork-bot+netdevbpf @ 2023-10-12 0:30 UTC (permalink / raw)
To: Justin Stitt
Cc: arinc.unal, daniel, Landen.Chao, dqfext, sean.wang, andrew,
f.fainelli, olteanv, davem, edumazet, kuba, pabeni, matthias.bgg,
angelogioacchino.delregno, netdev, linux-kernel,
linux-arm-kernel, linux-mediatek, linux-hardening
Hello:
This patch was applied to netdev/net-next.git (main)
by Jakub Kicinski <kuba@kernel.org>:
On Mon, 09 Oct 2023 18:29:19 +0000 you wrote:
> `strncpy` is deprecated for use on NUL-terminated destination strings
> [1] and as such we should prefer more robust and less ambiguous string
> interfaces.
>
> ethtool_sprintf() is designed specifically for get_strings() usage.
> Let's replace strncpy in favor of this more robust and easier to
> understand interface.
>
> [...]
Here is the summary with links:
- net: dsa: mt7530: replace deprecated strncpy with ethtool_sprintf
https://git.kernel.org/netdev/net-next/c/ac49b992578d
You are awesome, thank you!
--
Deet-doot-dot, I am a bot.
https://korg.docs.kernel.org/patchwork/pwbot.html
^ permalink raw reply [flat|nested] 8+ messages in thread
end of thread, other threads:[~2023-10-12 0:30 UTC | newest]
Thread overview: 8+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2023-10-09 18:29 [PATCH] net: dsa: mt7530: replace deprecated strncpy with ethtool_sprintf Justin Stitt
2023-10-09 18:31 ` Kees Cook
2023-10-09 18:31 ` Kees Cook
2023-10-09 18:56 ` Kees Cook
2023-10-09 18:34 ` Daniel Golle
2023-10-09 20:33 ` Florian Fainelli
2023-10-10 9:05 ` AngeloGioacchino Del Regno
2023-10-12 0:30 ` patchwork-bot+netdevbpf
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).