* 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: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
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: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