mirror of
https://github.com/wolfSSL/wolfssl.git
synced 2025-08-03 20:54:41 +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) */
|
#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) */
|
#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)
|
#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)
|
#if defined(HAVE_INTEL_AVX1)
|
||||||
|
|
||||||
|
@@ -27,12 +27,14 @@
|
|||||||
WOLFSSL_API void wc_Md5GetHash(Md5*, byte*);
|
WOLFSSL_API void wc_Md5GetHash(Md5*, byte*);
|
||||||
WOLFSSL_API void wc_Md5RestorePos(Md5*, Md5*) ;
|
WOLFSSL_API void wc_Md5RestorePos(Md5*, Md5*) ;
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
#ifndef NO_SHA
|
#ifndef NO_SHA
|
||||||
#include <wolfssl/wolfcrypt/sha.h>
|
#include <wolfssl/wolfcrypt/sha.h>
|
||||||
WOLFSSL_API int wc_ShaGetHash(Sha*, byte*);
|
WOLFSSL_API int wc_ShaGetHash(Sha*, byte*);
|
||||||
WOLFSSL_API void wc_ShaRestorePos(Sha*, Sha*) ;
|
WOLFSSL_API void wc_ShaRestorePos(Sha*, Sha*) ;
|
||||||
WOLFSSL_API int wc_ShaHash(const byte*, word32, byte*);
|
WOLFSSL_API int wc_ShaHash(const byte*, word32, byte*);
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
#ifndef NO_SHA256
|
#ifndef NO_SHA256
|
||||||
#include <wolfssl/wolfcrypt/sha256.h>
|
#include <wolfssl/wolfcrypt/sha256.h>
|
||||||
WOLFSSL_API int wc_Sha256GetHash(Sha256*, byte*);
|
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*);
|
WOLFSSL_API int wc_Sha256Hash(const byte*, word32, byte*);
|
||||||
#endif
|
#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_InitSha512(Sha512*);
|
||||||
WOLFSSL_API int wc_Sha512Update(Sha512*, const byte*, word32);
|
WOLFSSL_API int wc_Sha512Update(Sha512*, const byte*, word32);
|
||||||
WOLFSSL_API int wc_Sha512Final(Sha512*, byte*);
|
WOLFSSL_API int wc_Sha512Final(Sha512*, byte*);
|
||||||
WOLFSSL_API int wc_Sha512Hash(const byte*, word32, byte*);
|
|
||||||
|
|
||||||
#if defined(WOLFSSL_SHA384)
|
#if defined(WOLFSSL_SHA384)
|
||||||
|
|
||||||
@@ -91,7 +90,6 @@ typedef struct Sha384 {
|
|||||||
WOLFSSL_API int wc_InitSha384(Sha384*);
|
WOLFSSL_API int wc_InitSha384(Sha384*);
|
||||||
WOLFSSL_API int wc_Sha384Update(Sha384*, const byte*, word32);
|
WOLFSSL_API int wc_Sha384Update(Sha384*, const byte*, word32);
|
||||||
WOLFSSL_API int wc_Sha384Final(Sha384*, byte*);
|
WOLFSSL_API int wc_Sha384Final(Sha384*, byte*);
|
||||||
WOLFSSL_API int wc_Sha384Hash(const byte*, word32, byte*);
|
|
||||||
|
|
||||||
#endif /* WOLFSSL_SHA384 */
|
#endif /* WOLFSSL_SHA384 */
|
||||||
|
|
||||||
|
Reference in New Issue
Block a user