Commit Graph

4574 Commits

Author SHA1 Message Date
toddouska 3bae6e2dc2 Merge pull request #3633 from SparkiDev/ecc_gen_z_fix
ECC gen z: convert blinding value to Montgomery form before using
2021-01-18 13:36:13 -08:00
Sean Parkinson ac76ef8ee7 Curve25519: replace uint64_t with word64
Remove usages of stdint.h types
Added a sword type for signed words.
2021-01-18 17:30:36 +10:00
John Safranek 0ac43bb095 Merge pull request #3618 from haydenroche5/ocsp_self_signed_issue
Modify ParseCertRelative to ensure issuerKeyHash gets parsed and copi…
2021-01-14 14:22:06 -08:00
Daniel Pouzzner 1e49bc2e82 asn.c/asn.h: fix --disable-ecc --enable-dsa. 2021-01-13 13:55:06 -06:00
Daniel Pouzzner f8013580df sp_int.c: fix 4 instances of "Value stored to 'o' is never read" found by LLVM9 scan-build. 2021-01-12 15:01:28 -06:00
Daniel Pouzzner fb82114866 sp_int.c: pay attention to the return value from sp_copy(), for general hygiene and to eliminate an inlining-related warning in sp_todecimal(). 2021-01-12 14:58:29 -06:00
Sean Parkinson f955c92008 ECC gen z: convert blinding value to Montgomery form before using 2021-01-07 11:30:58 +10:00
John Safranek d4e13796c2 M1 Support
We separate out 64-bit desktop support based on the Intel check. With
the advent of the new Apple chip, ARM can also be a desktop processor.
Detect it like we do the Intel 64-bit, and treat it similarly with
respect to fast and normal math.
2021-01-06 09:21:07 -08:00
Chris Conlon 54f072fd8d Merge pull request #3607 from douzzer/WOLFSSL_TEST_SUBROUTINE
test.c: add WOLFSSL_TEST_SUBROUTINE macro to make subtests optionally static
2021-01-04 10:10:56 -07:00
Hayden Roche 96ece3ac7d Modify ParseCertRelative to ensure issuerKeyHash gets parsed and copied into the
decoded cert for self-signed CA certs.

The bit of code that does this copy was previously inside a conditional that's
only entered if the certificate is not self-signed. The primary purpose of this
conditional is to set the maxPathLen field. It's possible that the copying of
the issuerKeyHash was mistakenly included in the "else" block here, when it
should be outside.
2021-01-04 10:34:09 -06:00
Sean Parkinson 413bde9146 Merge pull request #3608 from tmael/sp_squre
Fix SP integer square
2021-01-04 16:29:40 +10:00
Sean Parkinson faf7d307b4 Merge pull request #3606 from dgarske/zd11438
Fix for possible ECC sign memory leak with custom "k"
2021-01-04 15:39:53 +10:00
Tesfa Mael 01c27068c1 Correct SP x->used with sp_clamp() 2021-01-03 20:08:06 -08:00
Daniel Pouzzner 9dc8721032 linuxkm: on kernels >= 4.12, use kvmalloc()/kvfree() and a partial implementation of realloc() leveraging them, rather than kmalloc()/kfree()/krealloc(). this makes large allocations possible and relatively safe. note that the realloc() implementation fails gracefully when the supplied pointer is larger than the page size, but otherwise works normally. 2020-12-31 00:30:35 -06:00
Daniel Pouzzner a2dec7ce9c test.c: work around toolchain/ecosystem bug on aarch64 linux 4.14.0-xilinx-v2018.3. 2020-12-30 20:03:13 -06:00
Daniel Pouzzner 3d88676ff1 test.c: add WOLFSSL_TEST_SUBROUTINE macro to qualify all previously global subtest handlers, defaulting to the empty string. this restores the version<=4.5 test.c namespace allowing end users to call the tests directly piecemeal. --enable-linuxkm[-defaults] sets -DWOLFSSL_TEST_SUBROUTINE=static for extra namespace hygiene. 2020-12-30 16:12:08 -06:00
David Garske 060ebd1ca2 Fix for possible ECC sign memory leak when using WOLFSSL_ECDSA_SET_K and wc_ecc_sign_set_k, where the k is not valid. ZD 11438. 2020-12-30 09:54:54 -08:00
David Garske 7fb2c0f63f Merge pull request #3603 from haydenroche5/zd11434
Ensure that all leading zeros are skipped in sp_tohex.
2020-12-30 08:28:52 -08:00
David Garske 1b6a988dc0 Merge pull request #3601 from tmael/mp_rand_p
Add parameter check in sp_rand_prime()
2020-12-30 08:20:18 -08:00
Hayden Roche 81f70fba5f Ensure that all leading zeros are skipped in sp_tohex. 2020-12-30 08:32:01 -06:00
Tesfa Mael d366ca74af Review comments and cast 2020-12-29 19:48:45 -08:00
David Garske c6abb59343 Merge pull request #3593 from tmael/sp_cast
casting fix for clang-12
2020-12-29 09:51:37 -08:00
Daniel Pouzzner 2bd0d4c467 wolfcrypt/src/evp.c: fix wolfSSL_EVP_CipherUpdate_GCM() to not fail when inl is zero, to properly handle realloc implementations that return NULL for zero-size allocations. 2020-12-28 23:49:48 -06:00
Daniel Pouzzner fbcfc6adbf test.c: rehab fail codes in ecc_test_curve_size(). 2020-12-28 21:56:39 -06:00
Tesfa Mael cedec3ae28 Add parameter check 2020-12-28 15:53:56 -08:00
Tesfa Mael 5c4011b3b4 cast to int 2020-12-23 12:09:35 -08:00
Daniel Pouzzner d5dd35c739 add --enable-trackmemory=verbose, and add WOLFSSL_TEST_MAX_RELATIVE_HEAP_{BYTES,ALLOCS} and -m/-a (runtime counterparts) to wolfcrypt_test(). also add -h to wolfcrypt_test() to print available options. 2020-12-23 12:03:06 -06:00
Daniel Pouzzner f06361ddf6 add WOLFSSL_SMALL_STACK_STATIC macro, and use it to conditionally declare const byte vectors in test.c static for stack depth control -- currently only enabled for linuxkm, but should be compatible with any target with a TLB (virtual memory). 2020-12-22 17:12:57 -06:00
Tesfa Mael 56071ac21f Fix for Cryptocell tests 2020-12-22 16:23:16 -06:00
Jacob Barthelmeh 8ecc2f1771 add blog link to README and adjust for nginx build 2020-12-22 20:14:38 +07:00
toddouska 5eddcb24dd Merge pull request #3584 from JacobBarthelmeh/Release
prepare for release 4.6.0
2020-12-21 14:20:14 -08:00
David Garske 53e79f1053 Fix for mp_radix_size with radix 2 and mp_int equal to zero. Fix applies to normal and fast math only. ZD11419. 2020-12-21 12:41:32 -08:00
David Garske b4111e2f65 Fix for possible leaks with wc_ecc_sign_set_k when building with WOLFSSL_CUSTOM_CURVES enabled. ZD11416. 2020-12-21 11:27:14 -08:00
Chris Conlon 476a3e5d4f fix wc_curve25519_generic() ifdef on NXP LTC builds 2020-12-21 23:57:39 +07:00
David Garske 1c0a6b92ad Fix RSA hash warning for operations with no hash specified. 2020-12-21 08:37:15 -08:00
David Garske 28420b6e4d Fix for building with --with-intelqa and custom curves disabled. 2020-12-21 08:36:48 -08:00
Jacob Barthelmeh 4ef5956757 fix for declaring variable with Windows build 2020-12-21 17:24:35 +07:00
toddouska 0df41d865f Merge pull request #3580 from douzzer/fix-mp-read-bin-bit-accounting
fix mp_read_unsigned_bin() calculation of mp_int.used_bits
2020-12-18 14:41:16 -08:00
toddouska ea3c385021 Merge pull request #3579 from SparkiDev/sp_math_all_4096
SP math all: enable 4096-bit support by default for x64
2020-12-18 14:14:36 -08:00
toddouska 7e5f838f48 Merge pull request #3577 from dgarske/releasefixes_async
Release fixes for asynchronous crypto
2020-12-18 14:10:01 -08:00
toddouska fe92d29eb5 Merge pull request #3574 from cconlon/releasefixes
Release fixes for Jenkins tests, example client
2020-12-18 14:06:27 -08:00
toddouska cdc0753bfb Merge pull request #3571 from JacobBarthelmeh/Testing
Some initial testing and clean up
2020-12-18 14:05:26 -08:00
toddouska 814ed3f5a6 Merge pull request #3439 from julek-wolfssl/libest
Compatibility layer additions for cisco/libest
2020-12-18 14:03:34 -08:00
Daniel Pouzzner b0ec2bf058 wolfcrypt/src/integer.c: fix mp_read_unsigned_bin() accounting on mp_int.used_bits to avoid spurious .used > .alloc condition at loop exit. 2020-12-18 02:05:18 -06:00
Sean Parkinson 7f5a85ae85 Reduce stack usage 2020-12-18 13:15:50 +10:00
Sean Parkinson a4f8a21b9b ASN X509: Don't allow any more data after signature 2020-12-18 10:02:38 +10:00
David Garske ce0a2f3bc9 Fixes for Cavium Nitrox and Intel QuickAssist. 2020-12-17 15:53:28 -08:00
Chris Conlon 420a040774 fix WOLFSSL_ASYNC_CRYPT usage in test.c, test_wolfSSL_OBJ_ln() in api.c 2020-12-17 11:08:36 -07:00
Jacob Barthelmeh 97bc5e870c fix for default OCSP cmp value and fix for WOLFSSL_NO_CLIENT_AUTH build 2020-12-18 00:36:00 +07:00
Chris Conlon e8785666c4 fix NXP LTC build with wc_curve25519_generic(), only supports single basepoint 2020-12-17 09:50:18 -07:00