On Thu, Oct 05, 2023 at 06:56:50PM +0000, Justin Stitt wrote: > This pattern of strncpy with some pointer arithmetic setting fixed-sized > intervals with string literal data is a bit weird so let's use > ethtool_sprintf() as this has more obvious behavior and is less-error > prone. > > Nicely, we also get to drop a usage of the now deprecated strncpy() [1]. > > One might consider this pattern: > | ethtool_sprintf(&buf, lan9303_mib[u].name); > ... but this triggers a -Wformat-security warning. > > 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@vger.kernel.org > Cc: Kees Cook <keesc...@chromium.org> > Signed-off-by: Justin Stitt <justinst...@google.com>
Ah, cool ethtool_sprintf() works. Maybe some day we can fix the whole API to actually have bounds, but yes, this is fine. Reviewed-by: Kees Cook <keesc...@chromium.org> -- Kees Cook