Re: [PATCH] crypto: Annotate crypto strings with nonstring

From: Eric Biggers
Date: Tue Jun 10 2025 - 14:42:20 EST


On Thu, May 29, 2025 at 10:31:17AM -0700, Kees Cook wrote:
> Annotate various keys, ivs, and other byte arrays with __nonstring so
> that static initializers will not complain about truncating the trailing
> NUL byte under GCC 15 with -Wunterminated-string-initialization enabled.
> Silences many warnings like:
>
> ../lib/crypto/aesgcm.c:642:27: warning: initializer-string for array of 'unsigned char' truncates NUL terminator but destination lacks 'nonstring' attribute (13 chars into 12 available) [-Wunterminated-string-initialization]
> 642 | .iv = "\xca\xfe\xba\xbe\xfa\xce\xdb\xad"
> | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
>
> Signed-off-by: Kees Cook <kees@xxxxxxxxxx>
> ---
> Cc: Herbert Xu <herbert@xxxxxxxxxxxxxxxxxxx>
> Cc: Eric Biggers <ebiggers@xxxxxxxxxx>
> Cc: Ard Biesheuvel <ardb@xxxxxxxxxx>
> Cc: "David S. Miller" <davem@xxxxxxxxxxxxx>
> Cc: <linux-crypto@xxxxxxxxxxxxxxx>
> ---
> lib/crypto/aescfb.c | 8 ++++----
> lib/crypto/aesgcm.c | 46 ++++++++++++++++++++++-----------------------
> 2 files changed, 27 insertions(+), 27 deletions(-)

Applied to https://git.kernel.org/pub/scm/linux/kernel/git/ebiggers/linux.git/log/?h=libcrypto-fixes

Thanks!

- Eric