summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--crypto/sha/sha512.c10
1 files changed, 9 insertions, 1 deletions
diff --git a/crypto/sha/sha512.c b/crypto/sha/sha512.c
index ee00b55de8..bc547d7cdc 100644
--- a/crypto/sha/sha512.c
+++ b/crypto/sha/sha512.c
@@ -149,6 +149,10 @@ int SHA512_Init(SHA512_CTX *c)
#ifndef SHA512_ASM
static
+#else
+# ifdef INCLUDE_C_SHA512
+void sha512_block_data_order_c(SHA512_CTX *ctx, const void *in, size_t num);
+# endif
#endif
void sha512_block_data_order(SHA512_CTX *ctx, const void *in, size_t num);
@@ -338,7 +342,7 @@ void SHA512_Transform(SHA512_CTX *c, const unsigned char *data)
sha512_block_data_order(c, data, 1);
}
-#ifndef SHA512_ASM
+#if !defined(SHA512_ASM) || defined(INCLUDE_C_SHA512)
static const SHA_LONG64 K512[80] = {
U64(0x428a2f98d728ae22), U64(0x7137449123ef65cd),
U64(0xb5c0fbcfec4d3b2f), U64(0xe9b5dba58189dbbc),
@@ -737,8 +741,12 @@ static void sha512_block_data_order(SHA512_CTX *ctx, const void *in,
T1 = X[(j)&0x0f] += s0 + s1 + X[(j+9)&0x0f]; \
ROUND_00_15(i+j,a,b,c,d,e,f,g,h); } while (0)
+#ifdef INCLUDE_C_SHA512
+void sha512_block_data_order_c(SHA512_CTX *ctx, const void *in, size_t num)
+#else
static void sha512_block_data_order(SHA512_CTX *ctx, const void *in,
size_t num)
+#endif
{
const SHA_LONG64 *W = in;
SHA_LONG64 a, b, c, d, e, f, g, h, s0, s1, T1;