Merge pull request #6590 from dgarske/sp_math_only

Fix for SP math only case to ensure fast math and heap math are disabled
This commit is contained in:
Sean Parkinson
2023-07-11 10:33:46 +10:00
committed by GitHub
2 changed files with 10 additions and 1 deletions

View File

@ -2040,17 +2040,22 @@ extern void uITRON4_free(void *p) ;
* Constant time: Always
* Enable: WOLFSSL_SP_MATH_ALL
*/
#undef USE_FAST_MATH
#undef USE_INTEGER_HEAP_MATH
#elif defined(WOLFSSL_SP_MATH)
/* 2) SP Math with restricted key sizes: wolfSSL proprietary math
* implementation (sp_*.c).
* Constant time: Always
* Enable: WOLFSSL_SP_MATH
*/
#undef USE_FAST_MATH
#undef USE_INTEGER_HEAP_MATH
#elif defined(USE_FAST_MATH)
/* 3) Tom's Fast Math: Stack based (tfm.c)
* Constant time: Only with TFM_TIMING_RESISTANT
* Enable: USE_FAST_MATH
*/
#undef USE_INTEGER_HEAP_MATH
#elif defined(USE_INTEGER_HEAP_MATH)
/* 4) Integer Heap Math: Heap based (integer.c)
* Constant time: Not supported

View File

@ -41,7 +41,11 @@
#include <wolfssl/wolfcrypt/wolfmath.h>
#include <wolfssl/wolfcrypt/sp_int.h>
#include <wolfssl/wolfcrypt/ecc.h>
#if defined(HAVE_ECC) && defined(WOLFSSL_HAVE_SP_ECC)
#include <wolfssl/wolfcrypt/ecc.h>
#else
#undef WOLFSSL_HAVE_SP_ECC
#endif
#ifdef noinline
#define SP_NOINLINE noinline