Commit 4499e9abe1 for openssl.org
commit 4499e9abe162d6ef7a6600cd6573681572e431a7
Author: Christoph Müllner <christoph.muellner@vrull.eu>
Date: Fri Apr 10 02:22:52 2026 +0200
crypto: use void * in RISC-V digest shims
The RISC-V MD5 and SHA dispatch files use low-level digest context
types that are hidden in no-deprecated builds. Switch their shim
entry points to void * so they no longer depend on deprecated typed
interfaces.
Update the local MD5 declaration to match the untyped shim
interface.
Fixes: openssl/openssl#29357
Signed-off-by: Christoph Müllner <christoph.muellner@vrull.eu>
Reviewed-by: Milan Broz <mbroz@openssl.org>
Reviewed-by: Tomas Mraz <tomas@openssl.foundation>
MergeDate: Thu Jul 23 15:43:30 2026
(Merged from https://github.com/openssl/openssl/pull/30763)
diff --git a/crypto/md5/md5_riscv.c b/crypto/md5/md5_riscv.c
index 64dd1a5a26..3bd87a13c4 100644
--- a/crypto/md5/md5_riscv.c
+++ b/crypto/md5/md5_riscv.c
@@ -11,10 +11,10 @@
#include <openssl/md5.h>
#include "arch/riscv_arch.h"
-void ossl_md5_block_asm_data_order(MD5_CTX *c, const void *p, size_t num);
-void ossl_md5_block_asm_data_order_zbb(MD5_CTX *c, const void *p, size_t num);
-void ossl_md5_block_asm_data_order_riscv64(MD5_CTX *c, const void *p, size_t num);
-void ossl_md5_block_asm_data_order(MD5_CTX *c, const void *p, size_t num)
+void ossl_md5_block_asm_data_order(void *c, const void *p, size_t num);
+void ossl_md5_block_asm_data_order_zbb(void *c, const void *p, size_t num);
+void ossl_md5_block_asm_data_order_riscv64(void *c, const void *p, size_t num);
+void ossl_md5_block_asm_data_order(void *c, const void *p, size_t num)
{
if (RISCV_HAS_ZBB()) {
ossl_md5_block_asm_data_order_zbb(c, p, num);
diff --git a/crypto/sha/sha_riscv.c b/crypto/sha/sha_riscv.c
index 28248fd5ac..100ecacdde 100644
--- a/crypto/sha/sha_riscv.c
+++ b/crypto/sha/sha_riscv.c
@@ -18,9 +18,9 @@ void sha256_block_data_order_zvkb_zvknha_or_zvknhb(void *ctx, const void *in,
size_t num);
void sha256_block_data_order_zbb(void *ctx, const void *in, size_t num);
void sha256_block_data_order_riscv64(void *ctx, const void *in, size_t num);
-void sha256_block_data_order(SHA256_CTX *ctx, const void *in, size_t num);
+void sha256_block_data_order(void *ctx, const void *in, size_t num);
-void sha256_block_data_order(SHA256_CTX *ctx, const void *in, size_t num)
+void sha256_block_data_order(void *ctx, const void *in, size_t num)
{
if (RISCV_HAS_ZVKB() && (RISCV_HAS_ZVKNHA() || RISCV_HAS_ZVKNHB()) && riscv_vlen() >= 128) {
sha256_block_data_order_zvkb_zvknha_or_zvknhb(ctx, in, num);
@@ -34,9 +34,9 @@ void sha256_block_data_order(SHA256_CTX *ctx, const void *in, size_t num)
void sha512_block_data_order_zvkb_zvknhb(void *ctx, const void *in, size_t num);
void sha512_block_data_order_zbb(void *ctx, const void *in, size_t num);
void sha512_block_data_order_c(void *ctx, const void *in, size_t num);
-void sha512_block_data_order(SHA512_CTX *ctx, const void *in, size_t num);
+void sha512_block_data_order(void *ctx, const void *in, size_t num);
-void sha512_block_data_order(SHA512_CTX *ctx, const void *in, size_t num)
+void sha512_block_data_order(void *ctx, const void *in, size_t num)
{
if (RISCV_HAS_ZVKB_AND_ZVKNHB() && riscv_vlen() >= 128) {
sha512_block_data_order_zvkb_zvknhb(ctx, in, num);