mirror of
https://github.com/wolfSSL/wolfssl.git
synced 2025-08-03 12:44:45 +02:00
move wc_Sha512/384 Hash() outside of sha512.[hc]
This commit is contained in:
@@ -138,5 +138,74 @@ int wc_Sha256Hash(const byte* data, word32 len, byte* hash)
|
||||
#endif /* !defined(NO_SHA256) */
|
||||
|
||||
|
||||
#if defined(WOLFSSL_SHA512)
|
||||
int wc_Sha512Hash(const byte* data, word32 len, byte* hash)
|
||||
{
|
||||
int ret = 0;
|
||||
#ifdef WOLFSSL_SMALL_STACK
|
||||
Sha512* sha512;
|
||||
#else
|
||||
Sha512 sha512[1];
|
||||
#endif
|
||||
|
||||
#ifdef WOLFSSL_SMALL_STACK
|
||||
sha512 = (Sha512*)XMALLOC(sizeof(Sha512), NULL, DYNAMIC_TYPE_TMP_BUFFER);
|
||||
if (sha512 == NULL)
|
||||
return MEMORY_E;
|
||||
#endif
|
||||
|
||||
if ((ret = wc_InitSha512(sha512)) != 0) {
|
||||
WOLFSSL_MSG("InitSha512 failed");
|
||||
}
|
||||
else if ((ret = wc_Sha512Update(sha512, data, len)) != 0) {
|
||||
WOLFSSL_MSG("Sha512Update failed");
|
||||
}
|
||||
else if ((ret = wc_Sha512Final(sha512, hash)) != 0) {
|
||||
WOLFSSL_MSG("Sha512Final failed");
|
||||
}
|
||||
|
||||
#ifdef WOLFSSL_SMALL_STACK
|
||||
XFREE(sha512, NULL, DYNAMIC_TYPE_TMP_BUFFER);
|
||||
#endif
|
||||
|
||||
return ret;
|
||||
}
|
||||
|
||||
#if defined(WOLFSSL_SHA384)
|
||||
int wc_Sha384Hash(const byte* data, word32 len, byte* hash)
|
||||
{
|
||||
int ret = 0;
|
||||
#ifdef WOLFSSL_SMALL_STACK
|
||||
Sha384* sha384;
|
||||
#else
|
||||
Sha384 sha384[1];
|
||||
#endif
|
||||
|
||||
#ifdef WOLFSSL_SMALL_STACK
|
||||
sha384 = (Sha384*)XMALLOC(sizeof(Sha384), NULL, DYNAMIC_TYPE_TMP_BUFFER);
|
||||
if (sha384 == NULL)
|
||||
return MEMORY_E;
|
||||
#endif
|
||||
|
||||
if ((ret = wc_InitSha384(sha384)) != 0) {
|
||||
WOLFSSL_MSG("InitSha384 failed");
|
||||
}
|
||||
else if ((ret = wc_Sha384Update(sha384, data, len)) != 0) {
|
||||
WOLFSSL_MSG("Sha384Update failed");
|
||||
}
|
||||
else if ((ret = wc_Sha384Final(sha384, hash)) != 0) {
|
||||
WOLFSSL_MSG("Sha384Final failed");
|
||||
}
|
||||
|
||||
#ifdef WOLFSSL_SMALL_STACK
|
||||
XFREE(sha384, NULL, DYNAMIC_TYPE_TMP_BUFFER);
|
||||
#endif
|
||||
|
||||
return ret;
|
||||
}
|
||||
|
||||
#endif /* defined(WOLFSSL_SHA384) */
|
||||
#endif /* defined(WOLFSSL_SHA512) */
|
||||
|
||||
#endif /* !defined(WOLFSSL_TI_HASH) */
|
||||
|
||||
|
@@ -609,37 +609,6 @@ int wc_Sha512Final(Sha512* sha512, byte* hash)
|
||||
}
|
||||
|
||||
|
||||
int wc_Sha512Hash(const byte* data, word32 len, byte* hash)
|
||||
{
|
||||
int ret = 0;
|
||||
#ifdef WOLFSSL_SMALL_STACK
|
||||
Sha512* sha512;
|
||||
#else
|
||||
Sha512 sha512[1];
|
||||
#endif
|
||||
|
||||
#ifdef WOLFSSL_SMALL_STACK
|
||||
sha512 = (Sha512*)XMALLOC(sizeof(Sha512), NULL, DYNAMIC_TYPE_TMP_BUFFER);
|
||||
if (sha512 == NULL)
|
||||
return MEMORY_E;
|
||||
#endif
|
||||
|
||||
if ((ret = wc_InitSha512(sha512)) != 0) {
|
||||
WOLFSSL_MSG("InitSha512 failed");
|
||||
}
|
||||
else if ((ret = wc_Sha512Update(sha512, data, len)) != 0) {
|
||||
WOLFSSL_MSG("Sha512Update failed");
|
||||
}
|
||||
else if ((ret = wc_Sha512Final(sha512, hash)) != 0) {
|
||||
WOLFSSL_MSG("Sha512Final failed");
|
||||
}
|
||||
|
||||
#ifdef WOLFSSL_SMALL_STACK
|
||||
XFREE(sha512, NULL, DYNAMIC_TYPE_TMP_BUFFER);
|
||||
#endif
|
||||
|
||||
return ret;
|
||||
}
|
||||
|
||||
#if defined(HAVE_INTEL_AVX1)
|
||||
|
||||
@@ -1563,37 +1532,6 @@ int wc_Sha384Final(Sha384* sha384, byte* hash)
|
||||
}
|
||||
|
||||
|
||||
int wc_Sha384Hash(const byte* data, word32 len, byte* hash)
|
||||
{
|
||||
int ret = 0;
|
||||
#ifdef WOLFSSL_SMALL_STACK
|
||||
Sha384* sha384;
|
||||
#else
|
||||
Sha384 sha384[1];
|
||||
#endif
|
||||
|
||||
#ifdef WOLFSSL_SMALL_STACK
|
||||
sha384 = (Sha384*)XMALLOC(sizeof(Sha384), NULL, DYNAMIC_TYPE_TMP_BUFFER);
|
||||
if (sha384 == NULL)
|
||||
return MEMORY_E;
|
||||
#endif
|
||||
|
||||
if ((ret = wc_InitSha384(sha384)) != 0) {
|
||||
WOLFSSL_MSG("InitSha384 failed");
|
||||
}
|
||||
else if ((ret = wc_Sha384Update(sha384, data, len)) != 0) {
|
||||
WOLFSSL_MSG("Sha384Update failed");
|
||||
}
|
||||
else if ((ret = wc_Sha384Final(sha384, hash)) != 0) {
|
||||
WOLFSSL_MSG("Sha384Final failed");
|
||||
}
|
||||
|
||||
#ifdef WOLFSSL_SMALL_STACK
|
||||
XFREE(sha384, NULL, DYNAMIC_TYPE_TMP_BUFFER);
|
||||
#endif
|
||||
|
||||
return ret;
|
||||
}
|
||||
|
||||
#if defined(HAVE_INTEL_AVX1)
|
||||
|
||||
|
@@ -27,12 +27,14 @@
|
||||
WOLFSSL_API void wc_Md5GetHash(Md5*, byte*);
|
||||
WOLFSSL_API void wc_Md5RestorePos(Md5*, Md5*) ;
|
||||
#endif
|
||||
|
||||
#ifndef NO_SHA
|
||||
#include <wolfssl/wolfcrypt/sha.h>
|
||||
WOLFSSL_API int wc_ShaGetHash(Sha*, byte*);
|
||||
WOLFSSL_API void wc_ShaRestorePos(Sha*, Sha*) ;
|
||||
WOLFSSL_API int wc_ShaHash(const byte*, word32, byte*);
|
||||
#endif
|
||||
|
||||
#ifndef NO_SHA256
|
||||
#include <wolfssl/wolfcrypt/sha256.h>
|
||||
WOLFSSL_API int wc_Sha256GetHash(Sha256*, byte*);
|
||||
@@ -40,4 +42,13 @@ WOLFSSL_API void wc_Sha256RestorePos(Sha256*, Sha256*) ;
|
||||
WOLFSSL_API int wc_Sha256Hash(const byte*, word32, byte*);
|
||||
#endif
|
||||
|
||||
#endif
|
||||
#ifdef WOLFSSL_SHA512
|
||||
#include <wolfssl/wolfcrypt/sha512.h>
|
||||
WOLFSSL_API int wc_Sha512Hash(const byte*, word32, byte*);
|
||||
#if defined(WOLFSSL_SHA384)
|
||||
WOLFSSL_API int wc_Sha384Hash(const byte*, word32, byte*);
|
||||
#endif /* defined(WOLFSSL_SHA384) */
|
||||
#endif /* WOLFSSL_SHA512 */
|
||||
|
||||
|
||||
#endif /* WOLF_CRYPT_HASH_H */
|
||||
|
@@ -64,7 +64,6 @@ typedef struct Sha512 {
|
||||
WOLFSSL_API int wc_InitSha512(Sha512*);
|
||||
WOLFSSL_API int wc_Sha512Update(Sha512*, const byte*, word32);
|
||||
WOLFSSL_API int wc_Sha512Final(Sha512*, byte*);
|
||||
WOLFSSL_API int wc_Sha512Hash(const byte*, word32, byte*);
|
||||
|
||||
#if defined(WOLFSSL_SHA384)
|
||||
|
||||
@@ -91,7 +90,6 @@ typedef struct Sha384 {
|
||||
WOLFSSL_API int wc_InitSha384(Sha384*);
|
||||
WOLFSSL_API int wc_Sha384Update(Sha384*, const byte*, word32);
|
||||
WOLFSSL_API int wc_Sha384Final(Sha384*, byte*);
|
||||
WOLFSSL_API int wc_Sha384Hash(const byte*, word32, byte*);
|
||||
|
||||
#endif /* WOLFSSL_SHA384 */
|
||||
|
||||
|
Reference in New Issue
Block a user