Daniel Pouzzner
|
453698ba27
|
add explanatory comments for do_div(), used when WOLFSSL_LINUXKM.
|
2020-09-23 18:32:16 -05:00 |
|
Daniel Pouzzner
|
7c2aefcfdd
|
linuxkm: enable the rest of the _asm implementations for x86, wrapped in {SAVE,RESTORE}_VECTOR_REGISTERS().
|
2020-09-23 18:32:16 -05:00 |
|
Daniel Pouzzner
|
60a686f48c
|
tidying suggested by Sean in review.
|
2020-09-23 18:32:16 -05:00 |
|
Daniel Pouzzner
|
a9cad51b65
|
sp_mod_word(): add unoptimized alternative if -U__GNUC__.
|
2020-09-23 18:32:16 -05:00 |
|
Daniel Pouzzner
|
5f972d2ae6
|
test.c: now that sp math is fixed and working in linuxkm, reenable prime_test() for WOLFSSL_LINUXKM, and add a small stack refactor for it.
|
2020-09-23 18:32:16 -05:00 |
|
Daniel Pouzzner
|
fdbd6addd0
|
sp_int.c: add sp_mod_word() gated on WOLFSSL_SP_MOD_WORD_RP for runtimes lacking intrinsic support for int128 % int64; for linuxkm, use WOLFSSL_SP_DIV_WORD_HALF and the new WOLFSSL_SP_MOD_WORD_RP.
|
2020-09-23 18:32:16 -05:00 |
|
Daniel Pouzzner
|
8f130f3642
|
test.c: tweaks to accommodate clang's belligerent -Wparentheses-equality.
|
2020-09-23 18:32:16 -05:00 |
|
Daniel Pouzzner
|
447a238e8e
|
test.c: missed a _SMALL_STACK spot in rsa_ecc_certgen_test().
|
2020-09-23 18:32:16 -05:00 |
|
Daniel Pouzzner
|
5bfb5a3a83
|
test.c: fix missed spot in rsa_certgen_test(), and do another _SMALL_STACK refactor of a missed object in rsa_ecc_certgen_test().
|
2020-09-23 18:32:16 -05:00 |
|
Daniel Pouzzner
|
fdf87fe152
|
test.c: another missed spot.
|
2020-09-23 18:32:16 -05:00 |
|
Daniel Pouzzner
|
ebca451c93
|
test.c: missed a spot -- inadvertently unused return value.
|
2020-09-23 18:32:16 -05:00 |
|
Daniel Pouzzner
|
43c12ede50
|
ge448_double_scalarmult_vartime(): streamline WOLFSSL_SMALL_STACK refactor.
|
2020-09-23 18:32:16 -05:00 |
|
Daniel Pouzzner
|
80961ea913
|
test.c:ecc_decode_test(): WOLFSSL_SMALL_STACK refactor
|
2020-09-23 18:32:16 -05:00 |
|
Daniel Pouzzner
|
5801719ac3
|
wolfcrypt/src/asn.c:wc_GetKeyOID(): stack->heap refactor.
|
2020-09-23 18:32:16 -05:00 |
|
Daniel Pouzzner
|
dbe0273bf4
|
test.c: additional WOLFSSL_SMALL_STACK refactoring, covering --enable-sp-math and various missed spots.
|
2020-09-23 18:32:16 -05:00 |
|
Daniel Pouzzner
|
4f5bbbdca8
|
rsa.c:wc_CheckProbablePrime(): WOLFSSL_SMALL_STACK refactor
|
2020-09-23 18:32:16 -05:00 |
|
Daniel Pouzzner
|
cd88a2c7df
|
wolfcrypt/test/test.c: when WOLFSSL_LINUXKM, don't do the large-malloc-incurring wc_scrypt()s in scrypt_test().
|
2020-09-23 18:32:16 -05:00 |
|
Daniel Pouzzner
|
76cba38971
|
wolfcrypt/src/ge_448.c: redo small stack refactor of ge448_double_scalarmult_vartime(), so that when -UWOLFSSL_SMALL_STACK, code is effectively unchanged.
|
2020-09-23 18:32:16 -05:00 |
|
Daniel Pouzzner
|
dc4b15a265
|
test.c: fix gating on heap deallocation in hc128_test() to match earlier tweak to gating on allocation.
|
2020-09-23 18:32:16 -05:00 |
|
Daniel Pouzzner
|
b52d50d903
|
test.c: various improvements and fixes pursuant to dgarske's comments on PR #3244
|
2020-09-23 18:32:16 -05:00 |
|
Daniel Pouzzner
|
a80b0c1982
|
test.c: don't exclude prime_test when -DOLD_PRIME_CHECK, but to exclude it when -DWOLFSSL_LINUXKM.
|
2020-09-23 18:32:16 -05:00 |
|
Daniel Pouzzner
|
767f1972e3
|
aes.{c,h}: move SIMD includes from aes.h to aes.c, to avoid compiler errors on other .c's compiled -mno-sse for linuxkm.
|
2020-09-23 18:32:16 -05:00 |
|
Daniel Pouzzner
|
cd14cfb092
|
linuxkm: override-disable SIMD instructions for all .c.o's, with exceptions enumerated in Kbuild (currently only aes.c), and couple -msse with -fno-builtin-functions; export ENABLED_ASM for use as a pivot in Kbuild; use asm/i387.h, not asm/simd.h, for kernel_fpu_{begin,end}() protos.
|
2020-09-23 18:32:16 -05:00 |
|
Daniel Pouzzner
|
3626332334
|
wolfcrypt/src/aes.c for linuxkm: add missing vector register push/pops.
|
2020-09-23 18:32:16 -05:00 |
|
Daniel Pouzzner
|
360c749703
|
add {SAVE,RESTORE}_VECTOR_REGISTERS() macros for kernel_fpu_{begin,end} when WOLFSSL_LINUXKM, to allow safe use of AESNI and SIMD instructions in the kernel.
|
2020-09-23 18:32:16 -05:00 |
|
Daniel Pouzzner
|
e8b69f8a6a
|
dh_test(): fix missing casts for XMALLOC().
|
2020-09-23 18:32:16 -05:00 |
|
Daniel Pouzzner
|
f440089e92
|
dh_test(): fix typo (undersized dynamic buffers).
|
2020-09-23 18:32:16 -05:00 |
|
Daniel Pouzzner
|
8b19a9b58c
|
benchmark.c: fix always-true tests for DECLARE_VAR_IS_HEAP_ALLOC.
|
2020-09-23 18:32:16 -05:00 |
|
Daniel Pouzzner
|
f106fea0d8
|
rsa_no_pad_test(): fix uninited pointer.
|
2020-09-23 18:32:16 -05:00 |
|
Daniel Pouzzner
|
4ea8b46177
|
dh_test(): refactor remaining bare returns to ERROR_OUT().
|
2020-09-23 18:32:16 -05:00 |
|
Daniel Pouzzner
|
2ee218761e
|
dh_test(): missed a spot in last commit.
|
2020-09-23 18:32:16 -05:00 |
|
Daniel Pouzzner
|
ca1a991de5
|
wolfcrypt/test/test.c: fix an error-path leak in dh_test(), and deal with possible -Wdeclaration-after-statement for XFILE file.
|
2020-09-23 18:32:16 -05:00 |
|
Daniel Pouzzner
|
a7381f8a48
|
test.c:rsa_test(): fix uninited pointer
|
2020-09-23 18:32:16 -05:00 |
|
Daniel Pouzzner
|
6c32a730c2
|
more work on DECLARE_VAR -- fix allocation failure handling in bench_rsa_helper() to avoid uninitialized variables.
|
2020-09-23 18:32:16 -05:00 |
|
Daniel Pouzzner
|
426de2101a
|
more work on DECLARE_VAR -- proper handling of failed allocations. WIP.
|
2020-09-23 18:32:16 -05:00 |
|
Daniel Pouzzner
|
3c91ce9342
|
wolfcrypt/src/sp_int.c: undo 8efb1142f1f2744ff128033df8a3a2d43e42fd93 to take dgarske's better wc_bigint_init()-based take on it (aa870861921a317cca9a978a75a7de127809e100).
|
2020-09-23 18:32:15 -05:00 |
|
Daniel Pouzzner
|
c5d28c16b5
|
wolfcrypt/src/sp_int.c: clear whole struct in sp_init() and sp_init_multi(), to fix uninited pointer free()s in sp_free() when --enable-sp-math -DHAVE_WOLF_BIGINT.
|
2020-09-23 18:32:15 -05:00 |
|
Daniel Pouzzner
|
9b7c753165
|
wolfssl/wolfcrypt/types.h: make DECLARE_VAR() et al use heap allocation not only when WOLFSSL_ASYNC_CRYPT but also when WOLFSSL_SMALL_STACK.
|
2020-09-23 18:32:15 -05:00 |
|
Daniel Pouzzner
|
ce8f2e65de
|
wolfcrypt/src/sha256.c: undo c801de9d23c2f3348b84fdb8d893f81e6c3c2849 (dgarske has better&correct fix in 76e1760f915934bdc4911f3ae41abe6803ae094a).
|
2020-09-23 18:32:15 -05:00 |
|
Daniel Pouzzner
|
571bf897c4
|
wolfcrypt/test/test.c: stack->heap refactor for dh_test().
|
2020-09-23 18:32:15 -05:00 |
|
David Garske
|
66b59bda9b
|
Fix for expected fail test in openssl_test for partial block. Fix for mp_test with ECC disabled, which uses mp_init_copy.
|
2020-09-23 18:32:15 -05:00 |
|
David Garske
|
0f8cf32122
|
Fix for possible leak in openssl_test because EVP free not called with WOLFSSL_SMALL_STACK_CACHE (SHA256/SHA512). Added return code checking to the openssl_test in wolfCrypt test.
|
2020-09-23 18:32:15 -05:00 |
|
Daniel Pouzzner
|
32e30d23c6
|
wolfcrypt/test/test.c: fix uninitialized values in aesofb_test().
|
2020-09-23 18:32:15 -05:00 |
|
Daniel Pouzzner
|
e09487de1f
|
sha256.c: add missing _SMALL_STACK_CACHE initialization in InitSha256().
|
2020-09-23 18:32:15 -05:00 |
|
Daniel Pouzzner
|
922b023aea
|
wolfcrypt/src/random.c: rename the DRBG internal type __DRBG, because some customer is compiling libwolfssl with a "g++" override, which precludes typedefs and structs with different types but equal labels.
|
2020-09-23 18:32:15 -05:00 |
|
Daniel Pouzzner
|
f56c6d1d8f
|
wolfcrypt/test/test.c and wolfssl/test.h: implement DEBUG_STACK_SIZE_VERBOSE, measuring and reporting stack usage separately for each test. to use, ./configure --enable-stacksize && make CFLAGS+=-DDEBUG_STACK_SIZE_VERBOSE; also, remove a throwaway dev pragma that snuck into an earlier commit.
|
2020-09-23 18:32:15 -05:00 |
|
Daniel Pouzzner
|
925afe3b74
|
cast XMALLOC() return values assiduously, for Visual Studio compatibility.
|
2020-09-23 18:32:15 -05:00 |
|
Daniel Pouzzner
|
535822f4df
|
wolfcrypt/test/test.c: refactor for stack size and namespace control, allowing embedding of wolfcrypt_test() in kernel module.
|
2020-09-23 18:32:15 -05:00 |
|
Daniel Pouzzner
|
9ca94d6ca7
|
wolfcrypt/src/ge_448.c: refactor ge448_double_scalarmult_vartime() to use heap for workspace unless WOLFSSL_NO_MALLOC.
|
2020-09-23 18:32:15 -05:00 |
|
Daniel Pouzzner
|
92df5692b1
|
wolfcrypt/src/ecc.c: revert to commit g0fa5af9, which has all the necessary fixes.
|
2020-09-23 18:32:15 -05:00 |
|