Skip to content

Commit 64c4203

Browse files
authored
Merge pull request #10214 from douzzer/20260413-cross-riscv64-all-asm-fips-dev
20260413-cross-riscv64-all-asm-fips-dev
2 parents e3e95c0 + c4c2d8f commit 64c4203

3 files changed

Lines changed: 20 additions & 2 deletions

File tree

src/include.am

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -518,6 +518,10 @@ endif
518518
endif
519519
endif
520520

521+
if BUILD_RISCV_ASM
522+
src_libwolfssl@LIBSUFFIX@_la_SOURCES += wolfcrypt/src/port/riscv/riscv-64-aes.c
523+
endif BUILD_RISCV_ASM
524+
521525
if BUILD_SHA
522526
src_libwolfssl@LIBSUFFIX@_la_SOURCES += wolfcrypt/src/sha.c
523527
endif

wolfcrypt/src/aes.c

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1234,7 +1234,7 @@ static WARN_UNUSED_RESULT int wc_AesDecrypt(Aes* aes, const byte* inBlock,
12341234
/* implemented in wolfcrypt/src/port/psa/psa_aes.c */
12351235

12361236
#elif defined(WOLFSSL_RISCV_ASM)
1237-
/* implemented in wolfcrypt/src/port/risc-v/riscv-64-aes.c */
1237+
/* implemented in wolfcrypt/src/port/riscv/riscv-64-aes.c */
12381238

12391239
#elif defined(WOLFSSL_SILABS_SE_ACCEL)
12401240
/* implemented in wolfcrypt/src/port/silabs/silabs_aes.c */
@@ -12892,7 +12892,7 @@ int wc_AesCcmCheckTagSize(int sz)
1289212892
}
1289312893

1289412894
#if defined(WOLFSSL_RISCV_ASM)
12895-
/* implementation located in wolfcrypt/src/port/risc-v/riscv-64-aes.c */
12895+
/* implementation located in wolfcrypt/src/port/riscv/riscv-64-aes.c */
1289612896

1289712897
#elif defined(HAVE_COLDFIRE_SEC)
1289812898
#error "Coldfire SEC doesn't currently support AES-CCM mode"

wolfcrypt/src/port/riscv/riscv-64-aes.c

Lines changed: 14 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -21,6 +21,11 @@
2121

2222
#include <wolfssl/wolfcrypt/libwolfssl_sources.h>
2323

24+
#if FIPS_VERSION3_GE(2,0,0)
25+
/* set NO_WRAPPERS before headers, use direct internal f()s not wrappers */
26+
#define FIPS_NO_WRAPPERS
27+
#endif
28+
2429
#include <wolfssl/wolfcrypt/port/riscv/riscv-64-asm.h>
2530

2631
#if !defined(NO_AES)
@@ -36,6 +41,15 @@
3641

3742
#ifdef WOLFSSL_RISCV_ASM
3843

44+
#if FIPS_VERSION3_GE(6,0,0)
45+
const unsigned int wolfCrypt_FIPS_aes_ro_sanity[2] =
46+
{ 0x1a2b3c4d, 0x00000002 };
47+
int wolfCrypt_FIPS_AES_sanity(void)
48+
{
49+
return 0;
50+
}
51+
#endif
52+
3953
/* Copy a 16-byte value from in to out.
4054
*
4155
* @param [out] out 16-byte value destination.

0 commit comments

Comments
 (0)