I pushed a tiny patch to fix this warning I noticed when compiling
coreutils, which enables this option in ./configure:
lib/sha3.c: In function 'sha3_read_ctx':
lib/sha3.c:381:52: warning: zero as null pointer constant
[-Wzero-as-null-pointer-constant]
381 | if (EVP_DigestFinal_ex (evp_ctx, resbuf, 0))
| ^
This warning has to be enabled explicitly so it is no big deal:
$ cat main.c
int
main (void)
{
char *p = 0;
return !! p;
}
$ gcc -Wall -Wextra main.c
$ gcc -Wall -Wextra -Wzero-as-null-pointer-constant main.c
main.c: In function ‘main’:
main.c:4:13: warning: zero as null pointer constant
[-Wzero-as-null-pointer-constant]
4 | char *p = 0;
| ^
But I assume my dislike of using zeros as pointers is uncontroversial.
Collin
>From bf39aa4dceb50937f8b7a24b4b8785868d4c67b2 Mon Sep 17 00:00:00 2001
Message-ID: <bf39aa4dceb50937f8b7a24b4b8785868d4c67b2.1771911389.git.collin.fu...@gmail.com>
From: Collin Funk <[email protected]>
Date: Mon, 23 Feb 2026 21:32:25 -0800
Subject: [PATCH] crypto/sha3: Silence -Wzero-as-null-pointer-constant warning.
* lib/sha3.c (sha3_read_ctx): Use NULL for the pointer argument.
---
ChangeLog | 5 +++++
lib/sha3.c | 2 +-
2 files changed, 6 insertions(+), 1 deletion(-)
diff --git a/ChangeLog b/ChangeLog
index 0de1d91617..766682bec3 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,8 @@
+2026-02-23 Collin Funk <[email protected]>
+
+ crypto/sha3: Silence -Wzero-as-null-pointer-constant warning.
+ * lib/sha3.c (sha3_read_ctx): Use NULL for the pointer argument.
+
2026-02-23 Alejandro Colomar <[email protected]>
Use strnul in a few places.
diff --git a/lib/sha3.c b/lib/sha3.c
index 1bebbc7695..e7cb5ab549 100644
--- a/lib/sha3.c
+++ b/lib/sha3.c
@@ -378,7 +378,7 @@ sha3_read_ctx (struct sha3_ctx const *restrict ctx, void *restrict resbuf)
{
if (EVP_MD_CTX_copy_ex (evp_ctx, ctx->evp_ctx))
{
- if (EVP_DigestFinal_ex (evp_ctx, resbuf, 0))
+ if (EVP_DigestFinal_ex (evp_ctx, resbuf, NULL))
result = resbuf;
err = EINVAL;
}
--
2.53.0