Re: [PATCH v3] hwmon: refactor deprecated strncpy

From: Guenter Roeck
Date: Wed Sep 27 2023 - 08:49:04 EST


On Thu, Sep 21, 2023 at 05:41:46AM +0000, Justin Stitt wrote:
> `strncpy` is deprecated for use on NUL-terminated destination strings [1].
>
> Let's refactor this kcalloc() + strncpy() into a kmemdup_nul() which has
> more obvious behavior and is less error prone.
>
> To avoid truncating the last byte supply `...length + 1` to
> kmemdup_nul() as `element->string.length` does not account for the
> trailing null as made obvious from it's definition (and associated
> comment):
> | u32 length; /* # of bytes in string, excluding trailing null */
>
> ... this is precisely what the original kcalloc invocation did as well.
>
> Link: https://www.kernel.org/doc/html/latest/process/deprecated.html#strncpy-on-nul-terminated-strings [1]
> Link: https://github.com/KSPP/linux/issues/90
> Cc: linux-hardening@xxxxxxxxxxxxxxx
> Signed-off-by: Justin Stitt <justinstitt@xxxxxxxxxx>

I have multiple patches with the hwmon: prefix but no driver,
like this one, suggesting the change is in the hwmon core,
when in reality it is in some hwmon driver.
I am not going to apply any of those, and I am not even going to
look into them.

Guenter