Skip to content
Open
9 changes: 6 additions & 3 deletions doc/dox_comments/header_files-ja/md2.h
Original file line number Diff line number Diff line change
Expand Up @@ -4,6 +4,7 @@
\brief この関数はmd2を初期化します。これはwc_Md2Hashによって自動的に呼び出されます。

\return 0 初期化に成功した場合に返されます
\return BAD_FUNC_ARG md2がNULLの場合に返されます

\param md2 暗号化に使用するmd2構造体へのポインタ

Expand All @@ -23,14 +24,15 @@
\sa wc_Md2Update
\sa wc_Md2Final
*/
void wc_InitMd2(wc_Md2* md2);
int wc_InitMd2(wc_Md2* md2);
Comment thread
JacobBarthelmeh marked this conversation as resolved.

/*!
\ingroup MD2

\brief 長さlenの提供されたバイト配列を継続的にハッシュするために呼び出すことができます。

\return 0 ダイジェストへのデータ追加に成功した場合に返されます。
\return BAD_FUNC_ARG md2がNULLの場合、またはdataがNULLでlenが0でない場合に返されます

\param md2 暗号化に使用するmd2構造体へのポインタ
\param data ハッシュ化されるデータ
Expand All @@ -55,14 +57,15 @@ void wc_InitMd2(wc_Md2* md2);
\sa wc_Md2Final
\sa wc_InitMd2
*/
void wc_Md2Update(wc_Md2* md2, const byte* data, word32 len);
int wc_Md2Update(wc_Md2* md2, const byte* data, word32 len);

/*!
\ingroup MD2

\brief データのハッシュ化を完了します。結果はhashに格納されます。

\return 0 完了に成功した場合に返されます。
\return BAD_FUNC_ARG md2またはhashがNULLの場合に返されます

\param md2 暗号化に使用するmd2構造体へのポインタ
\param hash ハッシュ値を保持するバイト配列。
Expand All @@ -86,7 +89,7 @@ void wc_Md2Update(wc_Md2* md2, const byte* data, word32 len);
\sa wc_Md2Final
\sa wc_InitMd2
*/
void wc_Md2Final(wc_Md2* md2, byte* hash);
int wc_Md2Final(wc_Md2* md2, byte* hash);

/*!
\ingroup MD2
Expand Down
9 changes: 6 additions & 3 deletions doc/dox_comments/header_files-ja/md4.h
Original file line number Diff line number Diff line change
Expand Up @@ -4,6 +4,7 @@
\brief この関数はmd4を初期化します。これはwc_Md4Hashによって自動的に呼び出されます。

\return 0 初期化に成功した場合に返されます
\return BAD_FUNC_ARG md4がNULLの場合に返されます

\param md4 暗号化に使用するmd4構造体へのポインタ

Expand All @@ -23,14 +24,15 @@
\sa wc_Md4Update
\sa wc_Md4Final
*/
void wc_InitMd4(wc_Md4* md4);
int wc_InitMd4(wc_Md4* md4);
Comment thread
JacobBarthelmeh marked this conversation as resolved.

/*!
\ingroup MD4

\brief 長さlenの提供されたバイト配列を継続的にハッシュするために呼び出すことができます。

\return 0 ダイジェストへのデータ追加に成功した場合に返されます。
\return BAD_FUNC_ARG md4がNULLの場合、またはdataがNULLでlenが0でない場合に返されます

\param md4 暗号化に使用するmd4構造体へのポインタ
\param data ハッシュ化されるデータ
Expand All @@ -55,14 +57,15 @@ void wc_InitMd4(wc_Md4* md4);
\sa wc_Md4Final
\sa wc_InitMd4
*/
void wc_Md4Update(wc_Md4* md4, const byte* data, word32 len);
int wc_Md4Update(wc_Md4* md4, const byte* data, word32 len);

/*!
\ingroup MD4

\brief データのハッシュ化を完了します。結果はhashに格納されます。

\return 0 完了に成功した場合に返されます。
\return BAD_FUNC_ARG md4またはhashがNULLの場合に返されます

\param md4 暗号化に使用するmd4構造体へのポインタ
\param hash ハッシュ値を保持するバイト配列。
Expand All @@ -83,4 +86,4 @@ void wc_Md4Update(wc_Md4* md4, const byte* data, word32 len);
\sa wc_Md4Final
\sa wc_InitMd4
*/
void wc_Md4Final(wc_Md4* md4, byte* hash);
int wc_Md4Final(wc_Md4* md4, byte* hash);
10 changes: 7 additions & 3 deletions doc/dox_comments/header_files/md2.h
Original file line number Diff line number Diff line change
Expand Up @@ -5,6 +5,7 @@
called by wc_Md2Hash.

\return 0 Returned upon successfully initializing
\return BAD_FUNC_ARG Returned if md2 is NULL

\param md2 pointer to the md2 structure to use for encryption

Expand All @@ -24,7 +25,7 @@
\sa wc_Md2Update
\sa wc_Md2Final
*/
void wc_InitMd2(wc_Md2* md2);
int wc_InitMd2(wc_Md2* md2);
Comment thread
JacobBarthelmeh marked this conversation as resolved.

/*!
\ingroup MD2
Expand All @@ -33,6 +34,8 @@ void wc_InitMd2(wc_Md2* md2);
array of length len.

\return 0 Returned upon successfully adding the data to the digest.
\return BAD_FUNC_ARG Returned if md2 is NULL, or if data is NULL and
len is non-zero

\param md2 pointer to the md2 structure to use for encryption
\param data the data to be hashed
Expand All @@ -57,14 +60,15 @@ void wc_InitMd2(wc_Md2* md2);
\sa wc_Md2Final
\sa wc_InitMd2
*/
void wc_Md2Update(wc_Md2* md2, const byte* data, word32 len);
int wc_Md2Update(wc_Md2* md2, const byte* data, word32 len);

/*!
\ingroup MD2

\brief Finalizes hashing of data. Result is placed into hash.

\return 0 Returned upon successfully finalizing.
\return BAD_FUNC_ARG Returned if md2 or hash is NULL

\param md2 pointer to the md2 structure to use for encryption
\param hash Byte array to hold hash value.
Expand All @@ -88,7 +92,7 @@ void wc_Md2Update(wc_Md2* md2, const byte* data, word32 len);
\sa wc_Md2Final
\sa wc_InitMd2
*/
void wc_Md2Final(wc_Md2* md2, byte* hash);
int wc_Md2Final(wc_Md2* md2, byte* hash);

/*!
\ingroup MD2
Expand Down
10 changes: 7 additions & 3 deletions doc/dox_comments/header_files/md4.h
Original file line number Diff line number Diff line change
Expand Up @@ -5,6 +5,7 @@
called by wc_Md4Hash.

\return 0 Returned upon successfully initializing
\return BAD_FUNC_ARG Returned if md4 is NULL

\param md4 pointer to the md4 structure to use for encryption

Expand All @@ -24,7 +25,7 @@
\sa wc_Md4Update
\sa wc_Md4Final
*/
void wc_InitMd4(wc_Md4* md4);
int wc_InitMd4(wc_Md4* md4);
Comment thread
JacobBarthelmeh marked this conversation as resolved.

/*!
\ingroup MD4
Expand All @@ -33,6 +34,8 @@ void wc_InitMd4(wc_Md4* md4);
of length len.

\return 0 Returned upon successfully adding the data to the digest.
\return BAD_FUNC_ARG Returned if md4 is NULL, or if data is NULL and
len is non-zero

\param md4 pointer to the md4 structure to use for encryption
\param data the data to be hashed
Expand All @@ -57,14 +60,15 @@ void wc_InitMd4(wc_Md4* md4);
\sa wc_Md4Final
\sa wc_InitMd4
*/
void wc_Md4Update(wc_Md4* md4, const byte* data, word32 len);
int wc_Md4Update(wc_Md4* md4, const byte* data, word32 len);

/*!
\ingroup MD4

\brief Finalizes hashing of data. Result is placed into hash.

\return 0 Returned upon successfully finalizing.
\return BAD_FUNC_ARG Returned if md4 or hash is NULL

\param md4 pointer to the md4 structure to use for encryption
\param hash Byte array to hold hash value.
Expand All @@ -85,4 +89,4 @@ void wc_Md4Update(wc_Md4* md4, const byte* data, word32 len);
\sa wc_Md4Final
\sa wc_InitMd4
*/
void wc_Md4Final(wc_Md4* md4, byte* hash);
int wc_Md4Final(wc_Md4* md4, byte* hash);
50 changes: 42 additions & 8 deletions tests/api/test_md2.c
Original file line number Diff line number Diff line change
Expand Up @@ -37,29 +37,51 @@
/* Unit test for wc_InitMd2() and wc_InitMd2_ex() */
Comment thread
JacobBarthelmeh marked this conversation as resolved.
int test_wc_InitMd2(void)
{
EXPECT_SUCCESS_DECLS;
EXPECT_DECLS;
#ifdef WOLFSSL_MD2
DIGEST_INIT_ONLY_TEST(wc_Md2, Md2);
wc_Md2 md2;

ExpectIntEQ(wc_InitMd2(NULL), WC_NO_ERR_TRACE(BAD_FUNC_ARG));
ExpectIntEQ(wc_InitMd2(&md2), 0);
#endif
return EXPECT_RESULT();
}

/* Unit test for wc_UpdateMd2() */
int test_wc_Md2Update(void)
{
EXPECT_SUCCESS_DECLS;
EXPECT_DECLS;
#ifdef WOLFSSL_MD2
DIGEST_UPDATE_ONLY_TEST(wc_Md2, Md2);
wc_Md2 md2;

ExpectIntEQ(wc_InitMd2(&md2), 0);

ExpectIntEQ(wc_Md2Update(NULL, NULL, 1), WC_NO_ERR_TRACE(BAD_FUNC_ARG));
ExpectIntEQ(wc_Md2Update(&md2, NULL, 1), WC_NO_ERR_TRACE(BAD_FUNC_ARG));
ExpectIntEQ(wc_Md2Update(NULL, (byte*)"a", 1),
WC_NO_ERR_TRACE(BAD_FUNC_ARG));

ExpectIntEQ(wc_Md2Update(&md2, NULL, 0), 0);
ExpectIntEQ(wc_Md2Update(&md2, (byte*)"a", 1), 0);
#endif
return EXPECT_RESULT();
}

/* Unit test for wc_Md2Final() */
int test_wc_Md2Final(void)
{
EXPECT_SUCCESS_DECLS;
EXPECT_DECLS;
#ifdef WOLFSSL_MD2
DIGEST_FINAL_ONLY_TEST(wc_Md2, Md2, MD2);
wc_Md2 md2;
byte hash[WC_MD2_DIGEST_SIZE];

ExpectIntEQ(wc_InitMd2(&md2), 0);

ExpectIntEQ(wc_Md2Final(NULL, NULL), WC_NO_ERR_TRACE(BAD_FUNC_ARG));
ExpectIntEQ(wc_Md2Final(&md2, NULL), WC_NO_ERR_TRACE(BAD_FUNC_ARG));
ExpectIntEQ(wc_Md2Final(NULL, hash), WC_NO_ERR_TRACE(BAD_FUNC_ARG));

ExpectIntEQ(wc_Md2Final(&md2, hash), 0);
#endif
return EXPECT_RESULT();
}
Expand Down Expand Up @@ -120,8 +142,20 @@ int test_wc_Md2Hash(void)
{
EXPECT_DECLS;
#if defined(WOLFSSL_MD2)
DIGEST_HASH_ONLY_TEST(Md2, MD2);
byte data[WC_MD2_BLOCK_SIZE];
byte hash[WC_MD2_DIGEST_SIZE];

XMEMSET(data, 0xa5, sizeof(data));

/* Invalid parameters. */
ExpectIntEQ(wc_Md2Hash(NULL, sizeof(data), hash),
WC_NO_ERR_TRACE(BAD_FUNC_ARG));
ExpectIntEQ(wc_Md2Hash(data, sizeof(data), NULL),
WC_NO_ERR_TRACE(BAD_FUNC_ARG));

/* Valid parameters. */
ExpectIntEQ(wc_Md2Hash(data, sizeof(data), hash), 0);
#endif
return EXPECT_RESULT();
} /* END test_wc_Sm3Hash */
}

34 changes: 28 additions & 6 deletions tests/api/test_md4.c
Original file line number Diff line number Diff line change
Expand Up @@ -37,29 +37,51 @@
/* Unit test for wc_InitMd4() and wc_InitMd4_ex() */
Comment thread
JacobBarthelmeh marked this conversation as resolved.
int test_wc_InitMd4(void)
{
EXPECT_SUCCESS_DECLS;
EXPECT_DECLS;
#ifndef NO_MD4
DIGEST_INIT_ONLY_TEST(wc_Md4, Md4);
wc_Md4 md4;

ExpectIntEQ(wc_InitMd4(NULL), WC_NO_ERR_TRACE(BAD_FUNC_ARG));
ExpectIntEQ(wc_InitMd4(&md4), 0);
#endif
return EXPECT_RESULT();
}

/* Unit test for wc_UpdateMd4() */
int test_wc_Md4Update(void)
{
EXPECT_SUCCESS_DECLS;
EXPECT_DECLS;
#ifndef NO_MD4
DIGEST_UPDATE_ONLY_TEST(wc_Md4, Md4);
wc_Md4 md4;

ExpectIntEQ(wc_InitMd4(&md4), 0);

ExpectIntEQ(wc_Md4Update(NULL, NULL, 1), WC_NO_ERR_TRACE(BAD_FUNC_ARG));
ExpectIntEQ(wc_Md4Update(&md4, NULL, 1), WC_NO_ERR_TRACE(BAD_FUNC_ARG));
ExpectIntEQ(wc_Md4Update(NULL, (byte*)"a", 1),
WC_NO_ERR_TRACE(BAD_FUNC_ARG));

ExpectIntEQ(wc_Md4Update(&md4, NULL, 0), 0);
ExpectIntEQ(wc_Md4Update(&md4, (byte*)"a", 1), 0);
#endif
return EXPECT_RESULT();
}

/* Unit test for wc_Md4Final() */
int test_wc_Md4Final(void)
{
EXPECT_SUCCESS_DECLS;
EXPECT_DECLS;
#ifndef NO_MD4
DIGEST_FINAL_ONLY_TEST(wc_Md4, Md4, MD4);
wc_Md4 md4;
byte hash[WC_MD4_DIGEST_SIZE];

ExpectIntEQ(wc_InitMd4(&md4), 0);

ExpectIntEQ(wc_Md4Final(NULL, NULL), WC_NO_ERR_TRACE(BAD_FUNC_ARG));
ExpectIntEQ(wc_Md4Final(&md4, NULL), WC_NO_ERR_TRACE(BAD_FUNC_ARG));
ExpectIntEQ(wc_Md4Final(NULL, hash), WC_NO_ERR_TRACE(BAD_FUNC_ARG));

ExpectIntEQ(wc_Md4Final(&md4, hash), 0);
#endif
return EXPECT_RESULT();
}
Expand Down
2 changes: 1 addition & 1 deletion wolfcrypt/src/chacha.c
Original file line number Diff line number Diff line change
Expand Up @@ -52,7 +52,7 @@ Public domain.

#define U32C(v) (v##U)
#define U32V(v) ((word32)(v) & U32C(0xFFFFFFFF))
#define U8TO32_LITTLE(p) LITTLE32(((const word32*)(p))[0])
#define U8TO32_LITTLE(p) LITTLE32(readUnalignedWord32(p))

#define ROTATE(v,c) rotlFixed(v, c)
#define XOR(v,w) ((v) ^ (w))
Expand Down
Loading
Loading