JacobBarthelmeh
9ca379f3bb
Merge pull request #9719 from dgarske/usersettings_expand
...
Improve user_settings.h examples and add validation rules
2026-01-29 15:35:12 -07:00
David Garske
7077a7bdd8
Fix for macros not longer needed in .wolfssl_known_macro_extras
2026-01-29 09:28:23 -08:00
David Garske
c2a987595f
Add new user_settings.h templates for tls13, dtls13, pq, openssl_compat, baremetal, rsa_only, pkcs7, ca
2026-01-28 11:27:01 -08:00
David Garske
3946ba8de3
Improve user_settings.h examples and add validation rules
...
- Standardize header guards to WOLFSSL_USER_SETTINGS_H across all files
- Add #if 0/1 gates with labels for easy feature toggling
- Fix bugs: typos in eccnonblock (WOLFSL_SHA*), duplicates in fipsv5/all
- Add NO_DES3_TLS_SUITES alongside NO_DES3 where needed
- Update wolfboot_keytools with upstream PQ algorithms (ML-DSA, LMS, XMSS)
- Add settings.h validation rules with descriptive error messages
- Auto-define NO_DES3_TLS_SUITES when NO_DES3 is set (instead of error)
- Update README.md and add missing files to CI tests
2026-01-28 09:52:24 -08:00
JacobBarthelmeh
a6316114bd
Merge pull request #9716 from SparkiDev/regression_fixes_22
...
Regression test fixes
2026-01-27 22:07:50 -07:00
JacobBarthelmeh
ba3653d8d0
Merge pull request #9717 from dgarske/config_rules
...
Make sure all configure.ac rules are also enforced in settings.h
2026-01-27 21:53:51 -07:00
Sean Parkinson
eb2fb4a9ce
Merge pull request #9699 from anhu/downg
...
Add cipher suite filtering when downgrade is disabled
2026-01-28 08:59:06 +10:00
David Garske
46251bb401
Fix issue with NO_DES3_TLS_SUITES
2026-01-27 14:42:41 -08:00
Sean Parkinson
bc9e37118e
Regression test fixes
...
Mostly combinations of NO_WOLFSSL_CLIENT, NO_WOLFSSL_SERVER and
WOLFSSL_NO_CLIENT_AUTH were failing.
Added configurations to CI loop.
wc_AesGcmDecryptFinal: use WC_AES_BLOCK_SIZE to satisfy compiler.
2026-01-28 07:37:29 +10:00
JacobBarthelmeh
f7b5f00973
Merge pull request #9710 from rlm2002/xChaCha20_Poly1305_unitTest
...
Unit test updates for XChacha20-Poly1305
2026-01-27 13:56:16 -07:00
JacobBarthelmeh
4f84be8e66
Merge pull request #9715 from dgarske/rsa_key_parsing
...
Fix for RSA private key parsing (allowing public) and RSA keygen no malloc support
2026-01-27 13:11:14 -07:00
David Garske
74a4bcb546
Enforce all configure.ac rules in settings.h also. Keeping configure.ac for early error checking.
2026-01-27 10:46:29 -08:00
Anthony Hu
3aa758c615
renegotiation indication changes number of ciphersuites so gate on that
2026-01-27 12:57:31 -05:00
JacobBarthelmeh
3e7efe8be2
Merge pull request #9705 from cconlon/nameConstraints
...
Support for extracting and validating X.509 Name Constraints extensions
2026-01-27 10:01:48 -07:00
Anthony Hu
9a53125794
Simplify testing gating logic.
2026-01-27 11:19:50 -05:00
David Garske
c8fa1e915b
Fix for RSA private key parsing (allowing public) and RSA keygen no malloc support.
2026-01-26 16:06:05 -08:00
Ruby Martin
38cb14f2a9
add API unit test for XChacha20-Poly1305
...
Expand XChacha20-Poly1305 unit test
2026-01-26 15:33:35 -07:00
Chris Conlon
610d530e45
Add Name Constraints extension support with wolfSSL_X509_get_ext_d2i() and wolfSSL_NAME_CONSTRAINTS_check_name()
2026-01-26 10:36:05 -07:00
David Garske
eeaa3a7160
Merge pull request #9596 from kareem-wolfssl/zd19378
...
Add a runtime option to enable or disable the secure renegotiation check.
2026-01-26 08:34:57 -08:00
Anthony Hu
d6985a6ee3
AES-GCM guard.
2026-01-23 16:23:44 -05:00
Kaleb Himes
4574a0c10e
Merge pull request #9706 from miyazakh/selftest_pqc
...
Enable kyber and dilithium in selftest
2026-01-23 13:41:44 -07:00
David Garske
6ae5555718
Merge pull request #9704 from douzzer/20260122-toolchain-workarounds
...
20260122-toolchain-workarounds
2026-01-23 12:39:05 -08:00
David Garske
cd88ec57b0
Merge pull request #9685 from kareem-wolfssl/gh7735
...
Always reinitialize the SSL cipher suites in InitSSL_Side as the side and enabled algos have likely changed.
2026-01-23 12:38:46 -08:00
JacobBarthelmeh
2f388dde4c
Merge pull request #9703 from dgarske/stsafe-a120-ecdhe
...
Fixes for STSAFE-A120 ECDHE
2026-01-23 10:59:45 -07:00
David Garske
4773ea6d44
Merge pull request #9637 from Frauschi/test_coverage
...
Increase test coverage for PQC and CMake
2026-01-23 07:51:40 -08:00
David Garske
b5209344e0
Merge pull request #9707 from danielinux/enable_stm32g0_AES_only
...
Add STM32G0 hardware crypto support
2026-01-23 07:50:30 -08:00
Michal Jahelka
269c28be16
Add STM32G0 hardware crypto support
2026-01-23 11:09:08 +01:00
Tobias Frauenschläger
14ce7956f1
Increase test coverage
...
* More PQC configurations
* More CMake setups
* Fix various bugs uncovered by these tests
Added some missing feature additions to CMake to make the example
`user_settings_all.` config file work for the CI test.
2026-01-23 09:27:16 +01:00
Anthony Hu
2616fe3ff1
Better guards around tests
2026-01-22 22:17:59 -05:00
Hideki Miyazaki
0f72d2eafe
enable kyber and dilithium in selftest
2026-01-23 11:59:46 +09:00
Sean Parkinson
27df554e99
Merge pull request #9701 from Frauschi/brainpool-tls13
...
Add support for TLS 1.3 Brainpool curves
2026-01-23 10:42:32 +10:00
Sean Parkinson
baaa368a61
Merge pull request #9668 from kaleb-himes/PQ-FS-2026-Part1
...
PQ FS 2026 part1
2026-01-23 10:30:47 +10:00
David Garske
2c83711319
Merge pull request #9693 from kareem-wolfssl/zd21012
...
Use MinGW XINET_PTON definition for 32-bit MinGW as well as 64-bit.
2026-01-22 15:24:31 -08:00
Daniel Pouzzner
a1b43ab3fa
wolfssl/wolfcrypt/dilithium.h: add a check for whether all supported levels are disabled, in WOLFSSL_WC_DILITHIUM setup.
2026-01-22 17:20:46 -06:00
Daniel Pouzzner
71bffcc5eb
linuxkm/Kbuild: move FORCE_GLOBAL_OBJTOOL_OFF setup outside ENABLED_LINUXKM_PIE setup, i.e. always usable.
2026-01-22 17:20:46 -06:00
David Garske
a17f68f036
Merge pull request #9587 from kareem-wolfssl/zd20850
...
Add duplicate entry error to distinguish cases where a duplicate CRL is rejected.
2026-01-22 15:07:19 -08:00
David Garske
2fb19f84e5
Fixes for STSAFE-A120 ECDHE
2026-01-22 22:46:35 +00:00
Kareem
1103552c37
Code review feedback
2026-01-22 15:46:13 -07:00
Kareem
d60dd53165
Merge branch 'master' of https://github.com/wolfSSL/wolfssl into zd19378
2026-01-22 15:37:30 -07:00
Kareem
4c0c51fdff
Merge branch 'master' of https://github.com/wolfSSL/wolfssl into gh7735
2026-01-22 15:13:15 -07:00
Kareem
baedba6a58
Force client haveDH to true in wolfSSL_set_options. haveDH won't be set to true on the client as the server side is what calls DH param generation APIs which set this to true, but we still want the client to support DH cipher suites if enabled. This matches behavior from InitSSL_EitherSide.
2026-01-22 15:13:08 -07:00
kaleb-himes
20fc2de29d
Restore sanity to < SEED_BLOCK_SZ
2026-01-22 09:09:29 -07:00
kaleb-himes
20b2fd200f
Address failure rates from FIPS CRNGT test by implementing alternate RCT/ADP tests
...
Update ret code to match docs and update docs
Replace magic numbers with appropriate define
Define MAX_ENTROPY_BITS when MEMUSE not enabled
Fix type cast windows detection
Older FIPS modules still need the old check
CodeSpell you're wrong, that is what I want to name my variable
Turn the hostap into a manual dispatch until it gets fixed
Upon closer review we can not skip the test when memuse enabled
Fix whitespace stuff found by multitest
More syntax things
Correct comments based on latest findings
2026-01-22 09:06:17 -07:00
Tobias Frauenschläger
bde1bf6ce7
Fix user_settings ASM multiple define
2026-01-22 14:14:15 +01:00
Tobias Frauenschläger
eb8ba6124e
Support TLS 1.3 ECC Brainpool authentication
...
This also fixes TLS 1.2 authentication to only succeed in case the
brainpool curve was present in the supported_groups extension.
2026-01-22 14:14:09 +01:00
Tobias Frauenschläger
a462398387
Support Brainpool ECC curve TLS 1.3 key exchange
...
When both TLS 1.3 and Brainpool curves are enabled, three new groups can
be used for the ECDHE key exchange according to RFC 8734:
* WOLFSSL_ECC_BRAINPOOLP256R1TLS13 (31)
* WOLFSSL_ECC_BRAINPOOLP384R1TLS13 (32)
* WOLFSSL_ECC_BRAINPOOLP512R1TLS13 (33)
Also ensure that the existing TLS 1.2 curves are sent properly.
The TLS client application is updated to support handshakes via
Brainpool curves using the new argument "--bpKs".
2026-01-22 14:14:09 +01:00
David Garske
62ca34497c
Merge pull request #9633 from douzzer/20260108-DEFAULT_MAX_CLASSIC_ASYM_KEY_BITS
...
20260108-DEFAULT_MAX_CLASSIC_ASYM_KEY_BITS
2026-01-21 17:39:56 -08:00
David Garske
baeffb2f6a
Merge pull request #9692 from anhu/aead
...
wc_XChaCha20Poly1305_Init: NULL check aead, not ad
2026-01-21 17:22:32 -08:00
Daniel Pouzzner
142f493964
configure.ac: if ENABLED_32BIT, add -DWC_32BIT_CPU to AM_CFLAGS, and don't add WOLFSSL_X86_64_BUILD to AM_CFLAGS; fix handling for --enable-bump;
...
wolfssl/wolfcrypt/settings.h: classify OPENSSL_EXTRA as "desktop type system" in bump up of default FP_MAX_BITS and SP_INT_BITS;
wolfssl/wolfcrypt/types.h: if WC_32BIT_CPU, don't define WC_64BIT_CPU.
2026-01-21 18:21:16 -06:00
David Garske
e4e79dd8a3
Merge pull request #9694 from SparkiDev/tls_msg_sanity_fix
...
TLS: more sanity checks on message order
2026-01-21 15:11:11 -08:00
Anthony Hu
d088fee72c
Add cipher suite filtering when downgrade is disabled
...
When wolfSSL_SetVersion() is called to set a specific TLS version,
the downgrade flag is now set to 0. This causes wolfSSL_parse_cipher_list()
to no longer preserve cipher suites from the other TLS version group.
Previously, when using SSLv23 method and setting cipher suites for only
one TLS version (e.g., TLS 1.2), the library would preserve any existing
cipher suites from the other version (e.g., TLS 1.3) for OpenSSL API
compatibility. With this change, if a specific version is set via
wolfSSL_SetVersion(), only the cipher suites for that version are kept.
2026-01-21 18:01:01 -05:00
Anthony Hu
7d7299e254
Do not allow NULL with non-zero length.
2026-01-21 17:49:30 -05:00
David Garske
11ddec3f69
Merge pull request #9681 from tmael/wfb1_
...
Fix cert SW issues in Aes and rng
2026-01-21 13:41:01 -08:00
David Garske
e1e7c4d9f0
Merge pull request #9695 from miyazakh/fix_qt_unittest
...
Include `asn.h` for SN_xxx definitions from `openssl/obj_mac.h`
2026-01-21 12:56:53 -08:00
David Garske
47ff34b503
Merge pull request #9696 from SparkiDev/mldsa_max_vals_from_avail
...
ML-DSA: max values based on available parameters
2026-01-21 12:56:07 -08:00
David Garske
758d74f51f
Merge pull request #9687 from holtrop-wolfssl/rust-hmac-blake2
...
Rust wrapper: add HMAC-BLAKE2[bs] wrappers
2026-01-21 12:55:48 -08:00
Tesfa Mael
1c3816d7d8
Use seedSz < SEED_BLOCK_SZ
2026-01-21 12:09:53 -08:00
Tesfa Mael
d3d2105035
Fix cert SW issues
2026-01-21 12:09:53 -08:00
Daniel Pouzzner
418a3bff32
Merge pull request #9698 from dgarske/rsa_no_rng2
...
More fixes for NO RNG and NO check key
2026-01-21 14:01:10 -06:00
David Garske
f52930b844
More fixes for NO RNG and NO check key (broken in #9606 and #9576 )
2026-01-21 10:31:57 -08:00
David Garske
2a449ebfdf
Merge pull request #9673 from holtrop-wolfssl/update-github-workflows-ubuntu
...
Update from Ubuntu 22.04 to Ubuntu 24.04 for github workflows
2026-01-21 09:14:39 -08:00
Daniel Pouzzner
cc7897be0d
Merge pull request #9689 from dgarske/rsa_no_rng
...
Fixes for RSA with no RNG
2026-01-21 11:13:03 -06:00
David Garske
98dbc56daa
Merge pull request #9691 from douzzer/20260120-linuxkm-RHEL9v6-and-RDSEED-sanity-check
...
20260120-linuxkm-RHEL9v6-and-RDSEED-sanity-check
2026-01-21 09:03:32 -08:00
JacobBarthelmeh
685bacc917
Merge pull request #9614 from dgarske/stsafe-a120
...
Add STSAFE-A120 Support
2026-01-21 09:12:23 -07:00
Josh Holtrop
69fd8dc01f
Update from Ubuntu 22.04 to Ubuntu 24.04 for several github workflows
2026-01-20 21:44:56 -05:00
Sean Parkinson
88593f8dcd
ML-DSA: max values based on available parameters
...
When building wolfSSL implementation, make maximum sizes based on
available parameter sets.
Add wc_MlDsaKey_SignCtx and wc_MlDsaKey_VerifyCtx macros.
2026-01-21 12:04:28 +10:00
David Garske
38b0fe19a1
Improvements to code for ECDHE and peer review fixes.
2026-01-21 00:03:26 +00:00
David Garske
16fb84d0d1
Peer review fixes. Tested with brainpool.
2026-01-21 00:03:26 +00:00
David Garske
54f0ecb536
Fix for ephemeral key usage limit.
2026-01-21 00:03:26 +00:00
David Garske
384eaa48b3
Peer review fixes (thank you copilot)
2026-01-21 00:03:26 +00:00
David Garske
654901782c
Peer review cleanups. ECDHE improvements.
2026-01-21 00:03:26 +00:00
David Garske
02c3086e00
Added ECDHE support
2026-01-21 00:03:26 +00:00
David Garske
09c75f25de
Fixes for peer review.
2026-01-21 00:03:26 +00:00
David Garske
c7ca035baf
Cleanup WOLFSL_STSAFE and fix issue with multi-test macros
2026-01-21 00:03:26 +00:00
David Garske
a4c2398265
Add STSAFE-A120 Support
2026-01-21 00:03:26 +00:00
Sean Parkinson
8902afdcea
TLS: more sanity checks on message order
...
Add more checks on message ordering for TLS 1.2 and below.
Reformat code.
2026-01-21 10:00:38 +10:00
Hideki Miyazaki
22ed7472b4
fix qt unit test
...
include asn.h for SN_xxx definitions
2026-01-21 08:59:28 +09:00
Kareem
832bcd7f4b
Merge branch 'master' of https://github.com/wolfSSL/wolfssl into zd20850
2026-01-20 15:59:05 -07:00
Kareem
549f106907
Use MinGW XINET_PTON definition for 32-bit MinGW as well as 64-bit.
2026-01-20 15:55:19 -07:00
Daniel Pouzzner
7048fa80d4
wolfcrypt/src/random.c and wolfssl/wolfcrypt/settings.h: fixes from CI and peer review:
...
* in wc_GenerateSeed_IntelRD(), use stack/register allocation for sanity_word{1,2}, and
* don't set WC_VERBOSE_RNG if WOLFSSL_DEBUG_PRINTF is missing.
2026-01-20 16:48:21 -06:00
Kareem
0f0163d888
Merge branch 'master' of https://github.com/wolfSSL/wolfssl into gh7735
2026-01-20 15:18:26 -07:00
Anthony Hu
4550814e66
wc_XChaCha20Poly1305_Init: NULL check aead, not ad
2026-01-20 16:37:20 -05:00
Daniel Pouzzner
b91272c9a5
wolfcrypt/src/random.c: add sanity check in wc_GenerateSeed_IntelRD() to work around buggy RDSEED by disabling it if it generates three identical 64 bit words consecutively;
...
wolfssl/wolfcrypt/settings.h: if DEBUG_WOLFSSL && !WC_NO_VERBOSE_RNG, set WC_VERBOSE_RNG, and add WOLFSSL_NO_DEBUG_CERTS to allow inhibition of WOLFSSL_DEBUG_CERTS.
2026-01-20 15:24:43 -06:00
Daniel Pouzzner
ba53051457
add linuxkm/patches/5.14.0-570.58.1.el9_6/WOLFSSL_LINUXKM_HAVE_GET_RANDOM_CALLBACKS-5v14-570v58v1-el9_6.patch
2026-01-20 15:07:44 -06:00
Josh Holtrop
4a92ee31bb
Rust HMAC-BLAKE2: require exact output buffer size
2026-01-20 15:31:58 -05:00
Josh Holtrop
e59ddb95c7
Rust blake2: remove unnecessary cfg guards
2026-01-20 14:56:55 -05:00
David Garske
91d9389b9f
Fixes for RSA with no RNG
2026-01-20 11:05:10 -08:00
David Garske
c8867d8c52
Merge pull request #9688 from padelsbach/login-live-com-cert
...
Address connection issues in ocsp-stapling test
2026-01-20 11:04:51 -08:00
David Garske
17401da6ae
Merge pull request #9678 from cconlon/otherNameSan
...
Fix GENERAL_NAME memory management for otherName and RID SANs
2026-01-20 10:56:37 -08:00
David Garske
3520b4c9a1
Merge pull request #9636 from julek-wolfssl/zephyr-fixes-202601
...
Address Zephyr and C++ compatibility issues
2026-01-20 10:52:27 -08:00
David Garske
6bdc6a7550
Merge pull request #9618 from SparkiDev/volatile_multi_statement
...
Multiple volatile variables in a C statement undefined
2026-01-20 10:42:49 -08:00
Kareem
d505c0b7c5
Only reinitialize suites in InitSSL_Side if they were not set by the user. Always allocate suites in InitSSL_Side if they're NULL so InitSSL_Suites will set them.
2026-01-20 11:40:37 -07:00
David Garske
26b8795a3f
Merge pull request #9682 from JacobBarthelmeh/lic
...
add RPCS3 to GPLv2 exception list
2026-01-20 10:38:32 -08:00
Paul Adelsbach
2325c68d4e
Address connection issues in ocsp-stapling test
2026-01-20 09:46:35 -08:00
Josh Holtrop
af0fd013a1
HMAC-BLAKE2b: avoid coverity complaints about accessing x_key out of range
2026-01-20 08:14:02 -05:00
Josh Holtrop
a555d5290a
Rust wrapper: add HMAC-BLAKE2[bs] wrappers
2026-01-20 08:10:16 -05:00
Kareem
89931bd884
Always reinitialize the SSL cipher suites in InitSSL_Side as the side and enabled algos have likely changed.
2026-01-19 17:50:26 -07:00
Sean Parkinson
c71a4dd66f
Merge pull request #9662 from AlexLanzano/tls1.2-empty-cert-fix
...
[TLS 1.2, TLS 1.3] Fail immediately if server sends empty certificate message for TLS 1.2 and beyond
2026-01-20 09:45:29 +10:00
Chris Conlon
0f395a5f9d
Fix memory management in wolfssl_dns_entry_othername_to_gn() and
...
wolfSSL_X509_get_ext_d2i() for otherName SAN handling, add ASN_RID_TYPE case to wolfSSL_X509_get_ext_d2i()
2026-01-19 16:39:33 -07:00
Daniel Pouzzner
4ce6c4c262
Merge pull request #9623 from julek-wolfssl/dtls-1.3-ms-interval
...
dtls 1.3: allow rtx interval to be less than a second
2026-01-19 17:01:23 -06:00
Daniel Pouzzner
e465f92905
Merge pull request #9642 from holtrop-wolfssl/hmac-blake2
...
Add HMAC-BLAKE2b and HMAC-BLAKE2s API functions
2026-01-19 16:49:08 -06:00
Daniel Pouzzner
c2cf8b1545
Merge pull request #9659 from holtrop-wolfssl/improve-error-for-invalid-helloretryrequest
...
Improve log message and error code for invalid HelloRetryRequest - fix #9653
2026-01-19 16:23:59 -06:00
Juliusz Sosinowicz
f9aec60e0d
Restore previous includes but add more externs
2026-01-19 22:02:26 +01:00
JacobBarthelmeh
1e9d71af42
add RPCS3 to GPLv2 exception list
2026-01-19 13:48:16 -07:00
Daniel Pouzzner
bfc4f6bb01
Merge pull request #9677 from dgarske/riscv_sha512
...
Fix for building RISC-V 64-bit without SHA512
2026-01-19 12:57:59 -06:00
Juliusz Sosinowicz
77e1fb662b
Remove circular dependency between ssl.h and wolfio.h
2026-01-19 11:21:14 +01:00
Juliusz Sosinowicz
e86ceb2ad9
zephyr: define missing posix network funcs
2026-01-19 11:21:14 +01:00
Juliusz Sosinowicz
b6f0139d63
zephyr: Fix more C++ linkage
2026-01-19 11:21:14 +01:00
Juliusz Sosinowicz
bba4671042
wolfSSL_dtls13_use_quick_timeout: check for NULL input
2026-01-19 10:13:23 +01:00
Juliusz Sosinowicz
429b690370
Address code review
2026-01-19 09:38:17 +01:00
Juliusz Sosinowicz
48067f1fa7
dtls 1.3: allow rtx interval to be less than a second
2026-01-19 09:32:09 +01:00
Josh Holtrop
e90429dbb8
HMAC-BLAKE2: avoid clang-analyzer warnings about x_key being uninitialized
2026-01-18 22:20:14 -05:00
David Garske
d98bbf1bc4
Merge pull request #9679 from douzzer/20260117-fix-test_wolfSSL_EVP_sm3
...
20260117-fix-test_wolfSSL_EVP_sm3
2026-01-17 11:47:51 -08:00
Daniel Pouzzner
467d6dd338
tests/api/test_evp_digest.c: fix for copy-paste error in test_wolfSSL_EVP_sm3(), introduced in 43d831ff06.
2026-01-17 09:58:21 -06:00
Josh Holtrop
90c8b5c80d
HMAC-BLAKE2: Use uppercase U for unsigned integer constants
2026-01-17 09:15:47 -05:00
Daniel Pouzzner
1e51938965
Merge pull request #9675 from embhorn/zd21049
...
Doc fixes for ecc
2026-01-17 00:03:46 -06:00
Daniel Pouzzner
84bca62ace
Merge pull request #9667 from bigbrett/ancv-verify-callback-fix
...
Apple Cert Fix: Prevent verify callback from blocking ANCV invocation
2026-01-17 00:02:42 -06:00
Daniel Pouzzner
9ae87e2a48
Merge pull request #9657 from embhorn/gh9655
...
Fix TLSX_Parse to correctly handle client and server cert type ext with TLS1.3
2026-01-16 23:59:31 -06:00
Daniel Pouzzner
5c7f986925
Merge pull request #9670 from miyazakh/fix_selftest
...
Fix compilation, crypt test and unit test failures when selftest is enabled
2026-01-16 23:57:27 -06:00
Daniel Pouzzner
0ceed2d832
Merge pull request #9664 from padelsbach/hmac-update-len-check
...
Add length check to Hmac_UpdateFinal_CT to prevent build error
2026-01-16 15:35:58 -06:00
David Garske
214b3c2dd7
Fix for building RISC-V 64-bit without SHA512
2026-01-16 13:07:08 -08:00
Daniel Pouzzner
9aabef04ba
Merge pull request #9641 from SparkiDev/api_c_split_evp
...
API testing: split out more test cases
2026-01-16 14:58:15 -06:00
Daniel Pouzzner
d18b4b28e0
Merge pull request #9676 from night1rider/fix-sha256-inter-init
...
initialize i_shaCopy to prevent undefined behavior
2026-01-16 14:14:45 -06:00
Josh Holtrop
b1086a1dbc
HMAC-BLAKE2[bs] - remove some spaces per review feedback
2026-01-16 10:38:49 -05:00
Zackery Backman
7a894515cb
initialize i_shaCopy to prevent undefined behavior
2026-01-15 18:00:27 -07:00
David Garske
f58787259c
Merge pull request #9674 from douzzer/20260115-PQC-WOLFSSL_NO_MALLOC
...
20260115-PQC-WOLFSSL_NO_MALLOC
2026-01-15 16:18:34 -08:00
Hideki Miyazaki
8ad73d8ac1
Fix compile and crypt test failures when selftest is enabled
2026-01-16 08:55:06 +09:00
Sean Parkinson
9427f9f26c
Merge pull request #9665 from dgarske/cleanup_20260114
...
Remove Devin Lifeguard
2026-01-16 09:22:47 +10:00
Sean Parkinson
fabe0c090a
Merge pull request #9646 from rlm2002/coverity
...
20260112 Coverity: update macros and add length checks
2026-01-16 09:20:01 +10:00
Eric Blankenhorn
b3bb8edf45
Fix doc for wc_ecc_verify_hash / _ex
2026-01-15 17:01:24 -06:00
Eric Blankenhorn
8316a4080d
Fix doc for wc_ecc_mulmod
2026-01-15 16:45:48 -06:00
Daniel Pouzzner
eb65361281
wolfcrypt/test/test.c:
...
* tweaks to xmss_test() for compatibility with WOLFSSL_NO_MALLOC && NO_WOLFSSL_MEMORY;
* fixes for return codes in dilithium_test().
wolfssl/wolfcrypt/dilithium.h: add !WC_NO_CONSTRUCTORS gate around wc_dilithium_new() and wc_dilithium_delete() prototypes, to match gating in implementation.
2026-01-15 16:04:36 -06:00
Brett
65a2b06d89
ANCV: support server-side policy creation
2026-01-15 11:59:59 -07:00
Brett
22a9665e6d
Prevent verify callback from blocking ANCV invocation when verify
...
callback is registered. Reverts behavior to pre-PR#9144
2026-01-15 11:59:59 -07:00
Ruby Martin
b4344c17cc
add cleanup logic to sakke_kat_derive_test()
2026-01-15 10:58:26 -07:00
Ruby Martin
2596d56802
verify length limit for supported version ext
...
add length check to tls extensions
2026-01-15 10:58:26 -07:00
Josh Holtrop
e7612ff36f
Improve log message and error code for invalid HelloRetryRequest - fix #9653
2026-01-15 12:55:17 -05:00
David Garske
20c4e2760b
Remove Devin Lifeguard
2026-01-15 09:50:34 -08:00
David Garske
16e45f94ae
Merge pull request #9672 from holtrop-wolfssl/fix-hostap-git-url
...
Fix hostap repo clone URL
2026-01-15 09:49:45 -08:00
David Garske
7370e3145d
Merge pull request #9666 from padelsbach/arduino-esp32-space
...
Experimental: Reduce disk space for esp32 Arduino builds
2026-01-15 09:49:27 -08:00
Josh Holtrop
a4a24ad2fe
Fix hostap repo clone URL
2026-01-15 09:30:27 -05:00
Eric Blankenhorn
3c5b8f900e
Fix TLSX_Parse to correctly handle client and server cert type ext with TLS1.3
2026-01-15 07:36:52 -06:00
Paul Adelsbach
c193c4c64f
Reduce disk space for esp32 Arduino builds
2026-01-14 20:02:50 -08:00
David Garske
0f3c769c44
Merge pull request #9660 from douzzer/20260114-fixes
...
20260114-fixes
2026-01-14 20:00:27 -08:00
David Garske
f0d3957aa9
Merge pull request #9643 from mattia-moffa/20260112-sniffer-fixes
...
More sniffer length checks
2026-01-14 17:00:12 -08:00
Daniel Pouzzner
96f8eb01f9
wolfssl/wolfcrypt/asn.h and wolfssl/openssl/obj_mac.h: add shortname and longname mappings for ASN subject fields.
2026-01-14 18:03:32 -06:00
Daniel Pouzzner
8d3adfad44
wolfssl/wolfcrypt/falcon.h and wolfssl/wolfcrypt/sphincs.h: in falcon_key and sphincs_key, use WC_BITFIELD foo:1, not bool, to fix readability-implicit-bool-conversion.
2026-01-14 18:03:32 -06:00
Daniel Pouzzner
f738e44e39
wolfcrypt/test/test.c: in random_bank_test(), fix position of a misplaced WC_DRBG_BANKREF gate.
2026-01-14 18:03:32 -06:00
Sean Parkinson
9b5cbbc3fb
Merge pull request #9663 from embhorn/zd21045
...
Resolve unused var warning in oss-fuzz
2026-01-15 08:36:17 +10:00
Josh Holtrop
b432ee93a5
Add incremental API for HMAC-BLAKE2[bs] computation
2026-01-14 16:12:42 -05:00
Daniel Pouzzner
e8934f7a9e
Merge pull request #9661 from JacobBarthelmeh/lic
...
add SWUpdate to GPLv2 exception list
2026-01-14 14:39:49 -06:00
Josh Holtrop
74c79dab1e
Update constants in BLAKE2 doxygen documentation
2026-01-14 15:37:29 -05:00
Josh Holtrop
2b3c02531c
Use ForceZero to clean up HMAC-BLAKE2[bs]
2026-01-14 15:37:29 -05:00
Josh Holtrop
ee708dc457
Update README and doxygen for BLAKE2b/BLAKE2s
2026-01-14 15:37:29 -05:00
Josh Holtrop
92b57d7e34
Add HMAC-BLAKE2b and HMAC-BLAKE2s API functions
2026-01-14 15:37:28 -05:00
Ruby Martin
e32ac6ffb7
XMEMSET with WC_CALLOC_VAR_EX
...
switch WC_ALLOC_VAR_EX with XMEMSET to WC_CALLOC_VAR_EX
fix XMEMSET call for WC_CALLOC_VAR_EX
2026-01-14 11:27:21 -07:00
Paul Adelsbach
f3fb63aea7
Add length check to Hmac_UpdateFinal_CT to prevent build error
2026-01-14 09:31:35 -08:00
Eric Blankenhorn
625a3cd250
Resolve unused var warning in oss-fuzz
2026-01-14 11:23:19 -06:00
David Garske
2a5256ba18
Merge pull request #9654 from embhorn/zd21038
...
Fix DecodeAuthKeyInternal not clearing cert->extAuthKeyIdSet
2026-01-14 09:19:24 -08:00
JacobBarthelmeh
32d33f2a53
add SWUpdate to GPLv2 exception list
2026-01-14 09:42:39 -07:00
Alex Lanzano
bdc525dd6d
[TLS 1.2, TLS 1.3] Fail immediately if server sends empty certificate message for TLS 1.2 and beyond
2026-01-14 11:30:13 -05:00
David Garske
35f6910186
Merge pull request #9649 from douzzer/20260112-fixes
...
20260112-fixes
2026-01-13 15:03:43 -08:00
Daniel Pouzzner
1d247b744c
wrapper/rust/: fix unit tests to avoid out-of-order wolfCrypt_Cleanup().
2026-01-13 14:43:50 -06:00
Daniel Pouzzner
f878c43814
wolfcrypt/src/wc_port.c: in wolfCrypt_Cleanup(), return error if called with initRefCount <= 0.
2026-01-13 14:42:27 -06:00
Daniel Pouzzner
627f51632b
configure.ac: add -Wno-deprecated-enum-enum-conversion to CFLAGS to suppress C++20 default if applicable.
2026-01-13 12:41:53 -06:00
Daniel Pouzzner
366f5fe411
src/ssl.c: refactor initRefCount increment/decrement to avoid -Wvolatile.
2026-01-13 11:21:40 -06:00
Daniel Pouzzner
f6fbd2a3b7
wolfcrypt/test/test.c: in random_bank_test(), add a missing WC_DRBG_BANKREF gate, and fix wc_rng_bank_init(bank, ...) to pass _FLAG_NO_VECTOR_OPS to set up .sha_method test.
2026-01-13 11:21:40 -06:00
Daniel Pouzzner
b195628204
wolfcrypt/src/sha512.c: fix underinitialization and config-dependent leak paths in InitSha512_Family().
2026-01-13 11:21:40 -06:00
Daniel Pouzzner
fc68137b47
wolfcrypt/src/wc_port.c:
...
* fixes for readability-implicit-bool-conversion in wolfSSL_Atomic_Ptr_CompareExchange().
* refactor initRefCount as a wolfSSL_Atomic_Int, unless !WOLFSSL_ATOMIC_OPS, for thread safety.
2026-01-13 11:21:39 -06:00
Daniel Pouzzner
e0db99218f
wolfcrypt/src/asn.c: fix -Wstringop-truncation from gcc-16.0.0_p20260104 in KeyPemToDerPassCb().
2026-01-13 11:21:39 -06:00
Daniel Pouzzner
6f48e0613e
Merge pull request #9647 from SparkiDev/sp_volatile_op_fix
...
SP volatile op fix
2026-01-13 11:20:13 -06:00
Sean Parkinson
37b20fabdc
SP volatile op fix
...
Performing a non-atomic operation on a volatile.
Deprecated in C++20 and checked by new versions of compilers.
2026-01-14 02:17:20 +10:00
Eric Blankenhorn
4e419938a7
Fix DecodeAuthKeyInternal not clearing cert->extAuthKeyIdSet
2026-01-13 08:09:10 -06:00
Daniel Pouzzner
caa6429242
Merge pull request #9624 from holtrop-wolfssl/rust-xchacha20-poly1305
...
Rust wrapper: add one-shot XChaCha20-Poly1305 encrypt/decrypt functions
2026-01-13 00:51:15 -06:00
Sean Parkinson
1aa79af41e
Multiple volatile variables in a C statement undefined
...
Undefined behaviour when there are multiple volatile variables accessed
in the one C statement.
Changes to introduce non-volatile temporaries, split statement or make
variable non-volatile.
2026-01-13 15:08:50 +10:00
Daniel Pouzzner
05e480f14f
Merge pull request #9644 from philljj/bsdkm_time
...
bsdkm: sys time wrapper.
2026-01-12 22:01:33 -06:00
Daniel Pouzzner
48cb84df0d
Merge pull request #9645 from SparkiDev/curve25519_invert_nct_x64_asm_fix
...
Curve25519 x64 ASM: nct invert needs vzeroupper
2026-01-12 16:57:00 -06:00
Sean Parkinson
ffe304643e
Curve25519 x64 ASM: nct invert needs vzeroupper
...
When ymm registers used, vzeroupper is required at end.
2026-01-13 08:38:23 +10:00
jordan
268fc98a9a
bsdkm: cleanup for multi-test.
2026-01-12 15:17:34 -06:00
Sean Parkinson
43d831ff06
API testing: split out more test cases
...
EVP into test_evp_cipher, test_evp_digest, test_evp_pkey and test_evp.
OBJ into test_ossl_obj.
OpenSSL RAND into test_ossl_rand.
OpenSSL PKCS7 and PKCS12 tests into test_ossl_p7p12.
CertificateManager into test_certman.
Move some BIO tests from api.c into test_evp_bio.c.
Fix line lengths.
2026-01-13 06:34:49 +10:00
jordan
1ed6e41d16
bsdkm: sys time wrapper.
2026-01-12 13:51:22 -06:00
Mattia Moffa
100d765b0c
More sniffer length checks
2026-01-12 18:25:27 +01:00
David Garske
7e0a8551e9
Merge pull request #9638 from douzzer/20260109-rng_bank-fixes
...
20260109-rng_bank-fixes
2026-01-12 08:25:23 -08:00
Sean Parkinson
3f8efdc802
Merge pull request #9600 from padelsbach/addcrl-cleanup
...
Cleanup AddCRL mutex and alloc/free
2026-01-12 09:11:20 +10:00
Sean Parkinson
ce69f1cec0
Merge pull request #9635 from miyazakh/x509errstr_handling
...
Fix OpenSSL error code handling in ERR_reason_error_string()
2026-01-12 08:57:17 +10:00
Sean Parkinson
84ca4a05fa
Merge pull request #9628 from miyazakh/fix_crlnumber
...
Fix CRL Number hex string buffer overflow in CRL parser
2026-01-12 08:52:57 +10:00
Hideki Miyazaki
8571a67f13
fix PR test
2026-01-10 14:53:23 +09:00
Hideki Miyazaki
0e8af03f1d
OpenSSL error code handling in reason_error_string
2026-01-10 13:50:08 +09:00
Daniel Pouzzner
902164ca03
wolfcrypt/src/rng_bank.c: fixes for typography and s/wc_FreeRng(rng2)/wc_rng_free(rng2)/ in random_bank_test();
...
wolfcrypt/src/rng_bank.c: tweaks to silence benign Coverity CHECKED_RETURN.
2026-01-09 18:17:09 -06:00
Daniel Pouzzner
d0e32f82b7
.wolfssl_known_macro_extras: fix for lexical order.
2026-01-09 17:52:37 -06:00
Daniel Pouzzner
a043b7a8d6
wolfcrypt/src/rng_bank.c, wolfssl/wolfcrypt/rng_bank.h, wolfcrypt/test/test.c:
...
* add WC_RNG_BANK_STATIC to WC_RNG_BANK_SUPPORT, supporting WOLFSSL_NO_MALLOC;
* in random_bank_test(), fix gate around _NO_VECTOR_OPS sha256.sha_method test (WOLFSSL_SMALL_STACK_CACHE, and USE_INTEL_SPEEDUP not WC_HAVE_VECTOR_SPEEDUPS);
* in definition of struct wc_rng_bank_inst, accommodate WOLFSSL_NO_ATOMICS builds;
wolfssl/wolfcrypt/random.h: in definition of struct WC_RNG, add gate to avoid empty union in !HAVE_HASHDRBG configs.
2026-01-09 17:52:37 -06:00
Daniel Pouzzner
a091ed9151
Merge pull request #9590 from philljj/fips_bsdkm
...
Fips bsdkm
2026-01-09 17:51:11 -06:00
Hideki Miyazaki
7b577f8914
change byte to char
2026-01-10 07:32:21 +09:00
Paul Adelsbach
e62c94d5e3
Cleanup AddCRL mutex and alloc/free
2026-01-09 10:44:06 -08:00
David Garske
2d3941056b
Merge pull request #9630 from gasbytes/signedAttribsCount-fix
...
Increment signedAttribsCount with the right number of attributes it encoded
2026-01-09 10:06:01 -08:00
jordan
99527be3bf
bsdkm: review cleanup.
2026-01-09 08:07:28 -06:00
Hideki Miyazaki
d4760b148d
addressed review comments
2026-01-09 09:10:49 +09:00
Sean Parkinson
819eab8b46
Merge pull request #9609 from Frauschi/memory_leak_fix
...
Fix memory leak in case of handshake error
2026-01-09 10:10:31 +10:00
Hideki Miyazaki
d052128830
addressed review comments
2026-01-09 09:01:14 +09:00
Daniel Pouzzner
d555c1aaaa
Merge pull request #9619 from rlm2002/coverity
...
20260106 Coverity fixes
2026-01-08 15:03:43 -06:00
David Garske
f8b5352e50
Merge pull request #9612 from Frauschi/zephyr_track_memory
...
Add Zephyr support for TRACK_MEMORY
2026-01-08 13:01:18 -08:00
David Garske
9fe3b195e1
Merge pull request #9605 from Frauschi/build_system_fixes
...
Build systems improvements
2026-01-08 13:00:57 -08:00
David Garske
7258697b0c
Merge pull request #9629 from per-allansson/fix-ios-xcode-builds
...
IDE/XCODE: fix file types for asm.S files
2026-01-08 12:27:44 -08:00
Reda Chouk
9c7b586565
Increment signedAttribsCount with the right number of attributes it
...
encoded
2026-01-08 20:46:47 +01:00
David Garske
4f1d578212
Merge pull request #9610 from Frauschi/pre_master_secret_size
...
Remove PQC-based buffer size increase for PreMasterSecret
2026-01-08 11:18:19 -08:00
David Garske
198eac24d3
Merge pull request #9606 from Frauschi/cleanup_decode_private_key
...
Cleanup for DecodePrivateKey() functionality
2026-01-08 11:09:44 -08:00
David Garske
d25f98fd82
Merge pull request #9584 from miyazakh/fix_qtfail
...
Fix qt jenkins nightly test failure
2026-01-08 10:58:20 -08:00
David Garske
133d29dcef
Merge pull request #9626 from rizlik/name_contraints_fixes
...
asn: MatchBaseName fixes
2026-01-08 10:56:53 -08:00
David Garske
f57484d1b3
Merge pull request #9616 from douzzer/20251230-persistent-drbg
...
20251230-persistent-drbg
2026-01-08 10:54:45 -08:00
David Garske
b609fe28ca
Merge pull request #9611 from Frauschi/psk_compile_fix
...
Fix for PSK compile option
2026-01-08 10:52:57 -08:00
Tobias Frauenschläger
b934d9587a
Add Zephyr support for TRACK_MEMORY
2026-01-08 19:27:24 +01:00
David Garske
97d9bfcea6
Merge pull request #9601 from rizlik/early_data_client_side_fixes
...
check that we are resuming in write_early_data + minor fixes
2026-01-08 10:26:48 -08:00
David Garske
71f3bd4cd3
Merge pull request #9627 from SparkiDev/aarch64_asm_chacha20_256
...
ChaCha20 Aarch64 ASM fix: 256-bit case fixed
2026-01-08 10:24:48 -08:00
David Garske
d290caa848
Merge pull request #9608 from Frauschi/typo_fix
...
Fix for WOLFSSL_BLIND_PRIVATE_KEY and WOLFSSL_DUAL_ALG_CERTS
2026-01-08 10:23:30 -08:00
Tobias Frauenschläger
05dc9f0449
Fix memory leak in case of handshake error
...
Make sure peer dilithium key is properly freed in case the handshakes fails.
2026-01-08 16:50:28 +01:00
Per Allansson
c979f95648
IDE/XCODE: fix file types for asm.S files
2026-01-08 16:47:04 +01:00
Hideki Miyazaki
08876e278a
Fix CRL Number hex string buffer overflow in CRL parser
2026-01-08 17:25:19 +09:00
Sean Parkinson
883ceecf8a
ChaCha20 Aarch64 ASM fix: 256-bit case fixed
...
Fixed the 256-bits at a time crypt assembly code.
Add a chunking test for ChaCha20.
2026-01-08 18:01:15 +10:00
Daniel Pouzzner
0059f1647e
move WC_RNG_BANK_SUPPORT implementation from wolfcrypt/src/random.c and wolfssl/wolfcrypt/random.h to new files wolfcrypt/src/rng_bank.c and wolfssl/wolfcrypt/rng_bank.h;
...
wolfcrypt/src/rng_bank.c:
* add wc_local_rng_bank_checkout_for_bankref, wc_BankRef_Release(), wc_rng_bank_new(), and wc_rng_bank_free();
* in wc_rng_bank_checkin(), take a struct wc_rng_bank_inst **rng_inst and NULL it before return;
* in wc_rng_bank_init(), add a devId arg, and handle devId in wc_rng_bank_inst_reinit();
* add WC_RNG_BANK_INST_LOCK_* and use them in wc_rng_bank_checkout() and wc_rng_bank_checkin();
* fix order of operations in wc_rng_bank_checkout() re DISABLE_VECTOR_REGISTERS();
wolfcrypt/src/random.c:
* refactor per-instance salting for wc_rng_bank_inst: remove changes in Hash_df(), Hash_DRBG_Instantiate(), and _InitRng(), and in wc_rng_bank_init() and wc_rng_bank_inst_reinit(), use wc_InitRngNonce_ex() and pass the wc_rng_bank_inst pointer as the nonce;
* simplify the WC_RNG_BANK_SUPPORT variant of wc_RNG_GenerateBlock() -- delegate to wc_local_rng_bank_checkout_for_bankref() and remove supplementary error checking;
* in wc_FreeRng(), call wc_BankRef_Release() when WC_DRBG_BANKREF, and in wc_BankRef_Release(), fix refcount flub (not wolfSSL_RefFree, rather wolfSSL_RefDec);
* streamline the WOLFSSL_LINUXKM wc_GenerateSeed();
wolfcrypt/test/test.c: add random_bank_test();
linuxkm/lkcapi_sha_glue.c: use WC_RNG_BANK_INST_TO_RNG() opportunistically;
configure.ac: add --enable-amdrdseed as a synonym for --enable-amdrand;
linuxkm/linuxkm_wc_port.h: when LINUXKM_LKCAPI_REGISTER_HASH_DRBG_DEFAULT, don't include get_random_bytes() in struct wolfssl_linuxkm_pie_redirect_table;
add various comments for clarity.
2026-01-07 22:54:07 -06:00
Daniel Pouzzner
1e0351a69b
wolfssl/wolfcrypt/random.h and wolfssl/wolfcrypt/async.h: use #ifdef HAVE_ANONYMOUS_INLINE_AGGREGATES, not #if HAVE_ANONYMOUS_INLINE_AGGREGATES.
2026-01-07 22:54:07 -06:00
Daniel Pouzzner
98ffc519b4
wolfssl/wolfcrypt/types.h: if _MSC_VER, disable HAVE_ANONYMOUS_INLINE_AGGREGATES by default.
2026-01-07 22:54:07 -06:00
Daniel Pouzzner
c1d2828daf
wolfcrypt/src/random.c, wolfssl/wolfcrypt/random.h, wolfssl/wolfcrypt/wc_port.h, linuxkm/lkcapi_sha_glue.c: fixes from autotesting:
...
* refactor to eliminate recursion in wc_RNG_GenerateBlock();
* refactor enum wc_rng_bank_flags as word32 and macros;
* fix -Wconversions, -Wunused, and stray EINVAL in wc_rng_bank_init();
* make struct wc_rng_bank_inst a top-level definition for C++ compat;
* fix several bugprone-macro-parentheses.
2026-01-07 22:54:07 -06:00
Daniel Pouzzner
b87af914bc
configure.ac: add handling for --enable-rng-bank, and add it to the all-crypto feature set.
2026-01-07 22:54:07 -06:00
Daniel Pouzzner
b2199e9862
linuxkm/{lkcapi_dh_glue.c,lkcapi_ecdh_glue.c,lkcapi_rsa_glue.c}: use LKCAPI_INITRNG() rather than wc_InitRng(), and remove calls to LKCAPI_INITRNG_FOR_SELFTEST(). also, in km_rsa_ctx_init_rng(), recognize WC_DRBG_BANKREF as a usable RNG status.
2026-01-07 22:54:07 -06:00
Daniel Pouzzner
1c6ef8b621
linuxkm/lkcapi_sha_glue.c:
...
* refactor to use new wc_rng_bank facility:
* wc_linuxkm_drbg_init_tfm()
* wc_linuxkm_drbg_exit_tfm()
* get_drbg() (renamed to linuxkm_get_drbg())
* put_drbg() (renamed to linuxkm_put_drbg())
* wc_linuxkm_drbg_generate()
* wc_linuxkm_drbg_seed()
* wc_mix_pool_bytes()
* wc_crng_reseed()
* add:
* linuxkm_affinity_lock()
* linuxkm_affinity_get_id()
* linuxkm_affinity_unlock()
* linuxkm_InitRng_DefaultRef()
* remove:
* get_drbg_n()
* drbg_init_from()
* fork_default_rng()
* LKCAPI_INITRNG_FOR_SELFTEST.
* when LINUXKM_LKCAPI_REGISTER_HASH_DRBG_DEFAULT, define LKCAPI_INITRNG to linuxkm_InitRng_DefaultRef, else define it to wc_InitRng().
2026-01-07 22:54:07 -06:00
Daniel Pouzzner
3c15be6610
wolfcrypt/src/random.c and wolfssl/wolfcrypt/random.h: implement WC_RNG_BANK_SUPPORT:
...
* add WC_DRBG_BANKREF status code;
* add `struct wc_rng_bank *bankref` to struct WC_RNG, and move status slot out from HAVE_HASHDRBG gate;
* add WC_DRBG_MAX_SALT_SZ, and add saltSz and salt slots to struct DRBG_internal;
* add salt handling to Hash_df(), Hash_DRBG_Instantiate(), and _InitRng();
* add types:
* enum wc_rng_bank_flags
* struct wc_rng_bank
* add implementations:
* wc_rng_bank_init()
* wc_rng_bank_set_affinity_handlers()
* wc_rng_bank_fini()
* wc_rng_bank_checkout()
* wc_rng_bank_checkin()
* wc_rng_bank_inst_reinit()
* wc_rng_bank_seed()
* wc_rng_bank_reseed()
* wc_InitRng_BankRef()
* wc_rng_new_bankref()
* WC_RNG_BANK_INST_TO_RNG()
* in wc_RNG_GenerateBlock() and wc_FreeRng(), add WC_RNG_BANK_SUPPORT sections;
wolfcrypt/src/random.c: in WC_VERBOSE_RNG messages, add "ERROR: " prefixes to text to assure pickup by autotesting. also fixed line lengths.
2026-01-07 22:54:07 -06:00
Daniel Pouzzner
6c8ff6dfa9
linuxkm/x86_vector_register_glue.c: in wc_save_vector_registers_x86(), don't render warning of call while non-preemptible if WC_SVR_FLAG_INHIBIT was passed in.
2026-01-07 22:54:07 -06:00
Daniel Pouzzner
dd158b073c
linuxkm/linuxkm_wc_port.h and linuxkm/module_hooks.c: remove WOLFSSL_DEBUG_BACKTRACE_ERROR_CODES gate around setup for wolfssl_linuxkm_pie_redirect_table.dump_stack.
...
linuxkm/module_hooks.c: in wc_linuxkm_relax_long_loop(), use cpu_relax() as a fallback when non-preemptible.
2026-01-07 22:54:07 -06:00
Daniel Pouzzner
500c790b18
wolfssl/wolfcrypt/settings.h:
...
* add FIPS_VERSION_NE();
* move more generic setup code from WOLFSSL_LINUXKM/WOLFSSL_BSDKM to kernel-generic WOLFSSL_KERNEL_MODE; fix WOLFSSL_OLD_PRIME_CHECK setup to exclude FIPS.
2026-01-07 22:54:06 -06:00
Daniel Pouzzner
32b1598db1
wolfcrypt/src/wc_port.c and wolfssl/wolfcrypt/wc_port.h: in wolfSSL_RefFree() and wolfSSL_RefWithMutexFree(), zero the refcount (valid refcount objects are initialized to count of 1); add wolfSSL_RefCur().
2026-01-07 22:54:06 -06:00
Daniel Pouzzner
f1dd234ac9
wolfcrypt/src/error.c, wolfssl/wolfcrypt/error-crypt.h: add BUSY_E and ALREADY_E.
2026-01-07 22:54:06 -06:00
Hideki Miyazaki
cdd75ff5ef
fix indent
2026-01-08 08:46:22 +09:00
Ruby Martin
6090ddb3f3
initialize hmac_copy
...
add WC_CALLOC_VAR_EX function, replace WC_ALLOC_VAR_EX in tests
2026-01-07 15:43:16 -07:00
Hideki Miyazaki
6392c2b420
undo changes
...
fix indentation
2026-01-08 07:10:25 +09:00
David Garske
6264c115cc
Merge pull request #9563 from LinuxJedi/renode
...
Add Renode GH Action for STM32H753
2026-01-07 09:51:30 -08:00
David Garske
5c2c4599ed
Merge pull request #9537 from SparkiDev/aarch64_darwin_addr_calc_fix
...
ARM64 ASM: Darwin specific address calc fix
2026-01-07 09:50:05 -08:00
Marco Oliverio
94dc7ae9ad
asn: MatchBaseName fixes
2026-01-07 17:53:43 +01:00
Josh Holtrop
a9b2e83d1c
Rust wrapper: add one-shot XChaCha20-Poly1305 encrypt/decrypt functions
2026-01-07 11:43:08 -05:00
David Garske
cf9016b29f
Merge pull request #9622 from SparkiDev/rsa_pkcs15_verify_bounds_check
...
RSA PKCS#1.5 verify: bounds check input
2026-01-07 08:26:24 -08:00
David Garske
84aeeb655f
Merge pull request #9580 from SparkiDev/curve25519_smul_improv
...
Curve25519 improvements
2026-01-07 08:25:41 -08:00
David Garske
19f7b946f5
Merge pull request #9621 from SparkiDev/mlkem_check_pub
...
MLKEM: check public key when decoding
2026-01-07 08:24:51 -08:00
David Garske
dd8d2a2d4d
Merge pull request #9575 from SparkiDev/dilithium_16_bit_fixes
...
MLDSA/Dilithium: fix 16-bit int issues
2026-01-07 08:24:22 -08:00
David Garske
b5d3c87876
Merge pull request #9603 from SparkiDev/ppc32_sha256_asm_reg
...
PPC32 ASM: alternative C code with registers prepended
2026-01-07 08:23:55 -08:00
David Garske
315ebf5be6
Merge pull request #9615 from SparkiDev/arm32_aes_block_inline
...
AES ARM32/Thumb2: option to inline block
2026-01-07 08:21:51 -08:00
Tobias Frauenschläger
87182992b8
Fix for PSK compile option
...
The derivation of the ResumptionSecret is only necessary in case SessionTickets are enabled.
2026-01-07 16:58:52 +01:00
Marco Oliverio
50b39c91da
fixup! (d)tls13: check if early data is possible in write_early_data
2026-01-07 14:30:16 +01:00
Tobias Frauenschläger
b8cb5bee87
Cleanup for DecodePrivateKey() functionality
...
* Create a new method DecodePrivateKey_ex() that gets the key to decode as parameters
* Adapt DecodePrivateKey() and DecodeAltPrivateKey() to use this new method
* Fix unblinding for TLS 1.3 Dual Algorithm Certificate alternative keys
This removes a lot of nearly duplicate code and simplifies maintenance.
2026-01-07 13:45:11 +01:00
Takashi Kojo
5f68ea087a
Merge pull request #9562 from kojiws/sync_ja_doc_rsa
...
[JA] Sync Japanese RSA Part with English on API Document
2026-01-07 18:18:53 +09:00
Sean Parkinson
80a0f6bb32
RSA PKCS#1.5 verify: bounds check input
...
As long as NO_RSA_BOUNDS_CHECK is not defined, the input range is
checked for verification.
2026-01-07 17:49:50 +10:00
Sean Parkinson
2a08fbe3ed
MLKEM: check public key when decoding
...
Check that the public key values are less than Q when decoding.
2026-01-07 13:11:15 +10:00
Hideki Miyazaki
c6dd1a745e
boundary check
2026-01-07 09:19:43 +09:00
Hideki Miyazaki
c923c4c026
fix compile error
2026-01-07 07:16:28 +09:00
Hideki Miyazaki
30fe079763
Addressed review comments
2026-01-07 06:55:22 +09:00
Hideki Miyazaki
10d3e251fd
fix qt jenkins nightly test failure
2026-01-07 06:55:22 +09:00
Sean Parkinson
eab58ae226
Merge pull request #9599 from holtrop-wolfssl/rust-chacha20-poly1305
...
Rust wrapper: add wolfssl_wolfcrypt::chacha20_poly1305 module
2026-01-06 20:28:24 +10:00
Sean Parkinson
b293a1cc5c
Merge pull request #9591 from rlm2002/coverity
...
20251229 Coverity Dereference before Null check
2026-01-06 20:25:01 +10:00
Sean Parkinson
5343cb386a
Merge pull request #9588 from kareem-wolfssl/ghAlerts
...
Fix incorrect alerts.
2026-01-06 20:22:51 +10:00
Sean Parkinson
a1089ba9f2
AES ARM32/Thumb2: option to inline block
...
Branching to a common block encrypt/decrypt may work for assembly but
not always for C code.
Added option, for assembly and inline assembly, to inline block
encrypt/decrypt: WOLFSSL_ARMASM_AES_BLOCK_INLINE.
2026-01-06 11:24:21 +10:00
Sean Parkinson
38241227a2
Curve25519 improvements
...
Add non-constant time implemenations of mod_inv for x64 and Aarch64
assembly.
Generate base point table, with better formatting, for double smul with
a script.
Increase Bi table size to 32 entries for 64-bit asm.
Minor improvements to double smul.
WOLFSSL_CURVE25519_NOT_USE_ED25519 to not use ed25519 base smul in
curve25519 base smul.
2026-01-06 10:24:21 +10:00
Daniel Pouzzner
83f7204f99
Merge pull request #9597 from sameehj/rhel9_linuxkm_sign
...
linuxkm: handle RHEL9 disabled akcipher sign/decrypt ops
2026-01-05 17:23:45 -06:00
Sean Parkinson
a20d5f7b9d
Merge pull request #9613 from philljj/fix_ecc_test_name
...
wolfcrypt test: fix ecc521 err msg.
2026-01-06 08:49:01 +10:00
jordan
842511b0ef
wolfcrypt test: fix ecc521 err msg.
2026-01-05 12:25:53 -06:00
Sameeh Jubran
d27c04bbca
linuxkm: handle RHEL9 disabled akcipher sign/decrypt ops
...
RHEL9 kernels (9.6+) disable RSA signing and decryption in the kernel
crypto API for security reasons (CVE-2023-6240). The kernel forcibly
overwrites akcipher sign/decrypt callbacks to return -ENOSYS, regardless
of what the driver provides.
Commit 3709c35c in the RHEL kernel:
"crypto: akcipher - Disable signing and decryption"
This affects our self-tests which call crypto_akcipher_sign() and
crypto_akcipher_decrypt(). On RHEL9, these operations return -ENOSYS
even though our driver correctly implements them.
Add compile-time checks for RHEL_RELEASE_CODE >= 9.6 to detect this
scenario and skip the affected self-tests gracefully. The tests pass
since the algorithms are registered correctly; the kernel simply
refuses to execute sign/decrypt operations as a matter of policy.
Note: encrypt and verify operations are unaffected and continue to be
tested normally.
Signed-off-by: Sameeh Jubran <sameeh@wolfssl.com >
2026-01-05 19:42:29 +02:00
Tobias Frauenschläger
116260762f
Fix for WOLFSSL_BLIND_PRIVATE_KEY and WOLFSSL_DUAL_ALG_CERTS
2026-01-05 17:26:11 +01:00
Tobias Frauenschläger
62764d08e4
Remove PQC-based buffer size increase for PreMasterSecret
...
The size of the PreMasterSecret buffer is based on the ENCRYPT_LEN
constant, which has been increased to 5kB for PQC support (Dilithium and
Falcon, as their signatures are that large).
However, only in the TLS 1.2 case, the PreMasterSecret buffer is used to
store signatures. In the TLS 1.3 path, only actual symmetric secrets are
stored in that buffer, which are much smaller in size (the "old" size of
the constant without the PQC increase).
As PQC is only allowed in TLS 1.3 and NOT in TLS 1.2, we can revert
that size increase, saving around 4,5kB of dynamic memory during the
handshake.
2026-01-05 15:58:53 +01:00
Tobias Frauenschläger
99bde324aa
Build systems improvements
...
* Add `WOLFSSL_USER_SETTINGS` to CMake `options.h.in`
* Add CMake support for Dilithium
* Add user_settings.h support for aes_asm.S
* Add PKCS#11 support to CMake
* Minor ARM assembly port fixes
2026-01-05 15:46:58 +01:00
Josh Holtrop
9007d12d2a
Rust wrapper: add wolfssl_wolfcrypt::chacha20_poly1305 module
2026-01-05 08:44:34 -05:00
Andrew Hutchings
4b606ebbeb
Fix trailing whitespace and flush-left
2026-01-05 13:39:43 +00:00
Andrew Hutchings
0c4ca257a0
Add Renode GH Action for STM32H753
...
This adds bare metal wolfCrypt test with hardware RNG and AES-GCM for
STM32H753 using Renode.
Renode does not support HASH HAL at this time.
2026-01-05 13:39:43 +00:00
Sean Parkinson
99692003d4
PPC32 ASM: alternative C code with registers prepended
...
C implementation with registers prepended with letter 'r'.
2026-01-05 21:12:10 +10:00
Marco Oliverio
7b9d3748cf
tls13: early_data: prevent earlyData reset on re-entry
...
Avoid resetting ssl->earlyData in wolfSSL_write_early_data when the
function is re-entered due to WC_PENDING_E, WANT_WRITE, or WANT_READ.
2026-01-05 10:40:34 +01:00
Marco Oliverio
29941d5645
(d)tls13: check if early data is possible in write_early_data
2026-01-05 10:35:02 +01:00
Marco Oliverio
d9bba72b8c
tls13: merge guarded code in a single section
2026-01-05 09:04:36 +01:00
David Garske
80c1228a38
Merge pull request #9594 from holtrop-wolfssl/rust-curve25519
...
Rust wrapper: add wolfssl_wolfcrypt::curve25519 module
2025-12-31 12:45:43 -08:00
Daniel Pouzzner
bbd3d4f55d
Merge pull request #9579 from dgarske/coding_standard_20251223
...
Add new coding standard for local (internal) function names
2025-12-31 11:55:58 -06:00
philljj
776512846f
Merge pull request #9598 from fabiankeil/unbreak-freebsd-build
...
tests: Unbreak the build on FreeBSD-based systems
2025-12-31 10:31:52 -06:00
Fabian Keil
21f35137a1
tests: Unbreak the build on FreeBSD-based systems
...
... by using the same additional includes as on Linux.
Fixes:
CC tests/api/unit_test-test_rsa.o
tests/api.c:19554:9: error: call to undeclared function 'waitpid'; ISO C99 and later do not support implicit function declarations [-Werror,-Wimplicit-function-declaration]
19554 | waitpid(pid, &waitstatus, 0);
| ^
Tested on ElectroBSD amd64 14.3-STABLE.
2025-12-31 14:48:06 +01:00
Daniel Pouzzner
cb78341886
Merge pull request #7586 from kareem-wolfssl/gh7197
...
Keep RNG seed file descriptor open until the RNG is freed.
2025-12-30 15:57:25 -06:00
philljj
5fa06818c0
Merge pull request #9595 from douzzer/20251229-linuxkm-rng-wolfentropy
...
20251229-linuxkm-rng-wolfentropy
2025-12-30 14:50:53 -06:00
Kareem
ddb2fb628e
Add a runtime option to enable or disable the secure renegotation check.
2025-12-30 13:19:04 -07:00
Kareem
1773a4ab41
Send no_renegotiation alert when rejecting renegotation attempt as defined in RFC 5246 section 7.2.2.
2025-12-30 13:18:48 -07:00
Daniel Pouzzner
0621615b15
wolfcrypt/src/random.c: remove WC_VERBOSE_RNG messaging from wc_RNG_TestSeed(), which is called by test code with expected failure, and move it to _InitRng() and PollAndReSeed(), where it's always expected to succeed.
2025-12-30 13:27:31 -06:00
Daniel Pouzzner
299ca1cfef
fixes from peer review: added comments for clarity, and remove errant condition added in _InitRng().
2025-12-30 12:13:15 -06:00
JacobBarthelmeh
7a2e1c1dd0
Merge pull request #9585 from dgarske/add-missing-api-docs
...
Add missing API documentation
2025-12-30 09:37:22 -07:00
Josh Holtrop
8c125df85e
Rust wrapper: ensure curve25519_key struct will have free called after init
2025-12-30 10:46:44 -05:00
Daniel Pouzzner
d504baaf3a
linuxkm/lkcapi_sha_glue.c and .wolfssl_known_macro_extras: fixes from check-source-text.
2025-12-29 20:55:36 -06:00
Daniel Pouzzner
450b0b46c6
wolfcrypt/src/random.c and wolfssl/wolfcrypt/settings.h: add WC_VERBOSE_RNG messages, and activate by default when WOLFSSL_KERNEL_MODE.
2025-12-29 20:55:36 -06:00
Daniel Pouzzner
fecc1cffe7
linuxkm/lkcapi_sha_glue.c: add retry loop around wc_InitRng(), and allow interrupt in preemptible threads, in wc_linuxkm_drbg_init_tfm().
2025-12-29 20:55:36 -06:00
Daniel Pouzzner
1844b8e3ac
linuxkm/Makefile: fix bash cleanup in recipe for libwolfssl.ko -- new trap for an event replaces previous trap rather than adding to it.
2025-12-29 20:55:36 -06:00
David Garske
d39b0e6f82
Fixes from peer review.
2025-12-29 17:30:23 -08:00
David Garske
0d44018627
Merge pull request #9593 from julek-wolfssl/copilot/changes-20251229
...
Add AGENTS.md to .gitignore
2025-12-29 17:22:39 -08:00
Anthony Hu
48ebe99372
Validate asn date based on position of Z ( #8603 )
2025-12-29 16:01:22 -06:00
Josh Holtrop
e971cb6942
Rust wrapper: avoid warning when neither blake2b nor blake2s is enabled
2025-12-29 14:33:25 -05:00
Josh Holtrop
0a834bed7a
Rust wrapper: add wolfssl_wolfcrypt::curve25519 module
2025-12-29 14:33:25 -05:00
Juliusz Sosinowicz
730b0d3e38
Add AGENTS.md to .gitignore
2025-12-29 19:01:50 +01:00
David Garske
5dee8ddfcb
Merge pull request #9586 from holtrop-wolfssl/rust-blake2
...
Rust wrapper: add wolfssl_wolfcrypt::blake2 module
2025-12-29 09:55:58 -08:00
Ruby Martin
39056bb262
move null check to prevent dereference before null check issue
...
add new scope, whitespace
2025-12-29 10:55:13 -07:00
David Garske
ea8af7ae71
Merge pull request #9592 from julek-wolfssl/fix/coverity-tls-frag
...
Fix Coverity (D)TLS fragmentation size checks
2025-12-29 09:54:32 -08:00
David Garske
17e992ab3f
Merge pull request #9589 from douzzer/20251226-fixes
...
20251226-fixes
2025-12-29 09:20:16 -08:00
David Garske
8bcac03086
Fix duplicated wc_rng_free and wc_rng_new
2025-12-29 08:52:17 -08:00
David Garske
5b5686c53c
Peer review improvements.
2025-12-29 08:37:51 -08:00
Juliusz Sosinowicz
f2d24404c8
Fix Coverity (D)TLS fragmentation size checks
...
Add MAX_RECORD_SIZE-based bounds checks in SendHandshakeMsg and Dtls13SendFragmentedInternal to prevent negative/overflowed fragment sizes from reaching memcpy/BuildMessage/DtlsMsgPoolSave.
2025-12-29 17:16:04 +01:00
jordan
b33a8568c3
bsdkm: small cleanup.
2025-12-28 10:32:18 -06:00
jordan
e4996c317e
bsdkm: fips support.
2025-12-28 10:16:53 -06:00
Daniel Pouzzner
7bbd28d369
wolfcrypt/src/aes.c: fix clang-diagnostic-unreachable-code in AesSetKey_C().
2025-12-26 18:13:44 -06:00
Daniel Pouzzner
283792c207
linuxkm/lkcapi_sha_glue.c: in wc_linuxkm_drbg_startup(), deinstall the callbacks and stdrng first before checking refcnt.
2025-12-26 16:41:43 -06:00
Kareem
7d04a53a6c
Update X509_get_default_cert_* stubs to return empty strings.
...
According to the documentation, these functions must return static strings, so NULL was not valid.
Fixes #6474 .
2025-12-26 15:26:05 -07:00
Kareem
6145f3aba2
Fix incorrect alert being sent when wolfSSL receives unexpected PSK extension.
...
Fixes #9503 .
2025-12-26 15:24:14 -07:00
Kareem
a7b83b06c1
Alert on out of order message with unexpected_message.
...
Fixes #9531 .
2025-12-26 15:23:23 -07:00
Daniel Pouzzner
3b3ddd1fb4
wolfcrypt/src/random.c: in wc_GenerateSeed(), move the gate closures for !FORCE_FAILURE_RDSEED and !ENTROPY_MEMUSE_FORCE_FAILURE to follow the /dev/urandom fallback method.
2025-12-26 14:16:11 -06:00
Kareem
17b6ce7b7b
Add parenthesis around XBADFD.
2025-12-26 12:38:54 -07:00
Kareem
d09b5ee1f1
Add duplicate entry error to distinguish cases where a duplicate CRL is rejected.
2025-12-26 12:02:35 -07:00
Daniel Pouzzner
b487287abf
wolfcrypt/benchmark/benchmark.c: smallstack refactor of bench_mlkem_encap()
2025-12-26 12:45:26 -06:00
Josh Holtrop
bbac280890
Rust wrapper: add wolfssl_wolfcrypt::blake2 module
2025-12-26 13:02:27 -05:00
David Garske
77d9410aa0
Add missing API documentation for Doxygen:
...
This PR adds Doxygen documentation for native wolfSSL API functions that were previously undocumented. It includes documentation notes for APIs gated on specific preprocessor macros:
- WOLF_PRIVATE_KEY_ID: _Id and _Label init helpers (wc_AesInit_Id, wc_AesInit_Label, wc_ecc_init_id, wc_ecc_init_label, wc_InitRsaKey_Id, wc_InitRsaKey_Label) require this for PKCS11 support
- WC_NO_CONSTRUCTORS: New/Delete constructor functions (wc_AesNew/Delete, wc_curve25519_new/delete, wc_ed25519_new/delete, wc_NewRsaKey/DeleteRsaKey) are only available when this is not defined. WC_NO_CONSTRUCTORS is automatically defined when WOLFSSL_NO_MALLOC is defined.
- WOLFSSL_PUBLIC_ASN: ASN functions marked with WOLFSSL_ASN_API include notes indicating they are not public by default
- WOLFSSL_DUAL_ALG_CERTS: wc_GeneratePreTBS and wc_MakeSigWithBitStr for Post-Quantum dual algorithm certificate signing
The New/Delete functions are documented as being exposed to support allocation of structures using dynamic memory to provide better ABI compatibility.
2025-12-26 08:41:56 -08:00
David Garske
73ee89a2fc
Improve no-void-functions rule
2025-12-26 08:06:37 -08:00
David Garske
e70e7cb144
Merge pull request #9583 from kareem-wolfssl/gh8152_2
...
Update CMake logic to allow WOLFSSL_SYS_CA_CERTS without filesystem support on Windows/Mac.
2025-12-26 07:48:43 -08:00
David Garske
1744c11686
Merge pull request #9570 from kareem-wolfssl/variousFixes
...
Add SSL_get_rfd and SSL_get_wfd. Various documentation updates.
2025-12-26 07:47:17 -08:00
David Garske
c3e65153cc
Improve the Devin lifeguard coding standard rules
2025-12-26 07:39:37 -08:00
David Garske
48d6811e04
Merge pull request #9582 from douzzer/20251224-wc_GenerateSeed-unreachable-code
...
20251224-wc_GenerateSeed-unreachable-code
2025-12-26 07:38:07 -08:00
Koji Takeda
51d49658d4
Update Japanese RSA API document
2025-12-26 09:16:33 +09:00
Kareem
0a02f5ef6b
Code review feedback
2025-12-24 17:12:40 -07:00
Kareem
496d124736
Merge remote-tracking branch 'upstream/master' into gh7197
2025-12-24 17:05:04 -07:00
Kareem
f98229554b
Update CMake logic to allow WOLFSSL_SYS_CA_CERTS without filesystem support on Windows/Mac.
2025-12-24 17:02:25 -07:00
Daniel Pouzzner
f4f4c7cfae
src/ssl.c: fix clang-analyzer-deadcode.DeadStores in check_cert_key().
2025-12-24 17:49:33 -06:00
Daniel Pouzzner
a944575e4b
wolfcrypt/src/random.c: fix clang-diagnostic-unreachable-code in wc_GenerateSeed().
2025-12-24 17:48:37 -06:00
Takashi Kojo
ff14797c3a
Merge pull request #9552 from tamasan238/pr9458
...
[JA] Fix issues with the API documentation
2025-12-25 08:28:21 +09:00
Daniel Pouzzner
019a420187
Merge pull request #9568 from kareem-wolfssl/zd20947
...
Add a flag which allows requesting exactly SEED_SZ and using the full seed to instantiate the DRBG during RNG init.
2025-12-24 17:03:26 -06:00
Takashi Kojo
09ce46e2d5
Merge pull request #9581 from tamasan238/pr9578
...
[JA] Correct the API docs for wolfSSL_write_early_data()
2025-12-25 07:34:57 +09:00
Masaki I.
ee8fcf9d36
[JA] Correct the API docs for wolfSSL_write_early_data()
2025-12-24 14:53:10 +09:00
David Garske
2354ea196b
Merge pull request #9513 from rizlik/dtls_header_fix
...
fix DTLS header headroom accounting
2025-12-23 17:20:12 -08:00
David Garske
0fae0a7ba6
Merge pull request #9397 from rizlik/earlydata_want_write_fixes
...
wolfssl: preserve early-data handling across WANT_WRITE retries
2025-12-23 17:19:39 -08:00
David Garske
d885749c09
Merge pull request #9561 from miyazakh/renesas_ssp_upgrade
...
add Renesas SK-S7G2 support
2025-12-23 15:15:45 -08:00
David Garske
57ef8a7caf
Merge pull request #9574 from anhu/dtls_guard
...
Guard a bit of DTLS code.
2025-12-23 15:03:46 -08:00
David Garske
18176392fa
Merge pull request #9576 from douzzer/20251222-linuxkm-PK-initrng-optimize
...
20251222-linuxkm-PK-initrng-optimize
2025-12-23 15:02:53 -08:00
Marco Oliverio
149bf19b4c
split overlong line
2025-12-23 23:41:52 +01:00
Marco Oliverio
2e63845531
use wolfssl_local as local functions prefix
2025-12-23 23:39:07 +01:00
David Garske
96e2e80108
Add new coding standard for local (internal) function names.
2025-12-23 14:32:08 -08:00
Marco Oliverio
bafb8e56d5
use wolfssl_local_ as local functions prefix
2025-12-23 23:32:08 +01:00
Kareem
06d8f69dac
Separate new /dev/urandom opening logic into a new section in wc_GenerateSeed.
2025-12-23 14:52:52 -07:00
Kareem
cb81cc8ce6
Merge remote-tracking branch 'upstream/master' into gh7197
2025-12-23 14:43:57 -07:00
Hideki Miyazaki
ba63d81441
add .gitignore to include.am
2025-12-24 06:36:08 +09:00
Hideki Miyazaki
75fad16f20
addressed code review comments
2025-12-24 05:59:09 +09:00
Anthony Hu
40327b7fe3
Binary consts to hexidecimal. C2X feature.
2025-12-23 14:45:36 -05:00
Daniel Pouzzner
b66f1b78a7
peer/Devin review:
...
* in get_crypto_default_rng() (linuxkm/lkcapi_sha_glue.c), sanity check that crypto_default_rng isn't null;
* in wc_InitRsaKey_ex(), remove frivolous NULL/zero assignments (XMEMSET clears them implicitly);
* in wc_CheckRsaKey(), check ret from wc_InitRng() and short circuit return if failed.
2025-12-23 13:05:40 -06:00
Daniel Pouzzner
da4fc4921e
tests/api/test_ed25519.c: in test_wc_Ed25519PublicKeyToDer(), on old FIPS, tolerate old error code from wc_Ed25519PublicKeyToDer().
2025-12-23 12:25:10 -06:00
Daniel Pouzzner
cd88a8ae88
peer review -- add !WC_NO_RNG gates around WC_RNG changes in wolfcrypt/src/rsa.c and wolfssl/wolfcrypt/rsa.h.
2025-12-23 11:41:59 -06:00
David Garske
d36bfabe18
Merge pull request #9560 from JacobBarthelmeh/clang
...
fix for shadows global declaration warning
2025-12-23 08:54:50 -08:00
David Garske
9de98cee73
Merge pull request #9569 from kareem-wolfssl/gh8152
...
Only enforce !NO_FILESYSTEM for WOLFSSL_SYS_CA_CERTS on non Windows/Mac systems.
2025-12-23 08:53:51 -08:00
Anthony Hu
c03c2dd541
Add tests
2025-12-23 11:48:57 -05:00
David Garske
70165c517b
Merge pull request #9571 from mattia-moffa/20251222-sniffer-uint-underflow-vuln
...
Add missing length check in sniffer for AES-GCM/AES-CCM/ARIA-GCM
2025-12-23 08:37:50 -08:00
David Garske
776b31267c
Merge pull request #9466 from SparkiDev/tls13_pt_alert_when_enc
...
TLS 1.3, plaintext alert: ignore when expecting encrypted
2025-12-23 08:37:00 -08:00
David Garske
86808b8a9b
Merge pull request #9578 from anhu/early_data_doc
...
Correct the API docs for wolfSSL_write_early_data()
2025-12-23 08:14:10 -08:00
David Garske
8f089cdcfe
Merge pull request #9508 from SparkiDev/ppc32_sha256_asm_pic
...
PPC32 SHA-256 ASM: support compiling for PIC
2025-12-23 08:12:50 -08:00
Anthony Hu
0b5e9c76ed
Correct the API docs for wolfSSL_write_early_data()
2025-12-23 10:08:02 -05:00
Daniel Pouzzner
b087533fdf
linuxkm/lkcapi_sha_glue.c:
...
* add drbg_init_from() and fork_default_rng(), and
* use the latter to define LKCAPI_INITRNG_FOR_SELFTEST() opportunistically (with fallback to plain wc_InitRng());
linuxkm/lkcapi_rsa_glue.c:
* add km_rsa_ctx_init_rng(),
* remove wc_InitRng() from km_rsa_ctx_init(),
* remove the WC_RSA_BLINDING gates around calls to wc_RsaSetRNG(), and
* call km_rsa_ctx_init_rng() before each call that needs an initialized RNG;
linuxkm/lkcapi_dh_glue.c and linuxkm/lkcapi_ecdh_glue.c: in km_ffdhe_init() and km_ecdh_init(), if linuxkm_lkcapi_registering_now, use LKCAPI_INITRNG_FOR_SELFTEST() to initialize ctx->rng;
linuxkm/lkcapi_glue.c: add notes that lkcapi_sha_glue inclusion and registrations must precede PK, and move declaration of linuxkm_lkcapi_registering_now to precede lkcapi glue inclusions.
2025-12-22 22:58:29 -06:00
Daniel Pouzzner
5030484bcf
wolfcrypt/src/random.c and wolfssl/wolfcrypt/random.h:
...
* add WC_DRBG_{NOT_INIT,OK,FAILED,CONT_FAILED} in public header file, and
* move setup for RNG_SECURITY_STRENGTH, ENTROPY_SCALE_FACTOR, SEED_BLOCK_SZ, SEED_SZ, MAX_SEED_SZ, and RNG_HEALTH_TEST_CHECK_SIZE from random.c to random.h, with public WC_DRBG_SEED_SZ and WC_DRBG_MAX_SEED_SZ.
2025-12-22 22:58:29 -06:00
Daniel Pouzzner
b2ef89b2db
wolfcrypt/src/rsa.c and wolfssl/wolfcrypt/rsa.h: make RsaKey.rng and wc_RsaSetRNG() available unconditionally, rather than only if WC_RSA_BLINDING, for use by wc_CheckRsaKey().
2025-12-22 22:58:29 -06:00
Sean Parkinson
21c86682e0
MLDSA/Dilithium: fix 16-bit int issues
...
Need to cast byte or number to ensure it is large enough to shift left
by required value.
2025-12-23 09:51:38 +10:00
Sean Parkinson
b766f11e7b
TLS 1.3, plaintext alert: ignore when expecting encrypted
...
In TLS 1.3, ignore valid unencrypted alerts that appear after encryption
has started.
Only ignore WOLFSSL_ALERT_COUNT_MAX-1 alerts.
2025-12-23 09:09:06 +10:00
Sean Parkinson
59f84355a5
Merge pull request #9573 from night1rider/aes-free-callbacks
...
Aes Free callback support
2025-12-23 08:47:05 +10:00
Sean Parkinson
c8f2cc5b43
Merge pull request #9566 from dgarske/ca_skid_cert_akid
...
Added build option to allow certificate CA matching using AKID with signers SKDI
2025-12-23 08:40:14 +10:00
Anthony Hu
cb2a80bf53
Guard a bit of DTLS code.
2025-12-22 17:05:47 -05:00
night1rider
afbc65a6c3
Aes Free callback support
2025-12-22 12:39:41 -07:00
Kareem
8de470b436
Add new WOLFSSL_RNG_USE_FULL_SEED macro to known macros.
2025-12-22 11:49:27 -07:00
Kareem
fe45b74921
Add trailing newline back to ssl.h.
2025-12-22 11:45:25 -07:00
Mattia Moffa
ca78994298
Add missing length check in sniffer for AES-GCM/AES-CCM/ARIA-GCM
2025-12-22 16:13:27 +01:00
Marco Oliverio
29d8fa7cb6
tls13: fix indentation alignment
2025-12-22 13:45:34 +01:00
Marco Oliverio
540fae80ab
test_dtls: test payload split when WOLFSSL_NO_DTLS_SIZE_CHECK
2025-12-22 13:41:33 +01:00
Marco Oliverio
8cbc4047df
internal: rename to use wolfssl internal prefix
2025-12-22 13:41:33 +01:00
Marco Oliverio
aa4fb5d3e5
internal: GetMaxPlainTextSize: precise pad size when adjusting for MTU
2025-12-22 13:41:33 +01:00
Marco Oliverio
1200efdeb3
internal: GetRecordSize: precise header computation on fallback path
2025-12-22 13:41:33 +01:00
Marco Oliverio
75e7d5e9bd
fix: split message > MTU on WOLFSSL_NO_DTLS_SIZE_CHECK
2025-12-22 12:49:31 +01:00
Sean Parkinson
da06e1aeea
Merge pull request #9558 from kareem-wolfssl/zd20944_2
...
Move Curve25519 public key check to make_pub/make_pub_blind to cover the case where they are called directly by an application.
2025-12-22 19:38:42 +10:00
Sean Parkinson
7a326ef43f
Merge pull request #9553 from julek-wolfssl/ed25519-export-key-check
...
ed25519: validate presence of keys in export functions
2025-12-22 19:31:14 +10:00
Marco Oliverio
14b124769a
use wolfssl internal prefix for MaybeCheckAlertOnErr
2025-12-22 10:04:50 +01:00
Marco Oliverio
12c2cdafaf
rename wolfSSL_MaybeCheckAlertOnErr in wolfMaybeCheckAlertOnErr
2025-12-22 09:51:06 +01:00
Marco Oliverio
f4c48c19c1
fix: abide unused arguments when WOLFSSL_CHECK_ALER_ON_ERR is disabled
2025-12-22 09:51:06 +01:00
Marco Oliverio
38d8eb6f0d
address reviewer's comments
2025-12-22 09:51:06 +01:00
Marco Oliverio
950c074c25
test: fix typo in structure field
2025-12-22 09:51:06 +01:00
Marco Oliverio
8de68decd2
test: tls13_early_data: test WANT_WRITE in early data
2025-12-22 09:51:06 +01:00
Marco Oliverio
609e30a69c
test: tls13_early_data: refactor splitEarlyData test option
2025-12-22 09:51:06 +01:00
Marco Oliverio
57282140a9
WOLFSSL_CHECK_ALERT_ON_ERR: ignore non fatal errors
2025-12-22 09:51:06 +01:00
Marco Oliverio
093d77727b
early_data: avoid resetting ssl->earlyData after WANT_WRITE retry
2025-12-22 09:51:06 +01:00
Marco Oliverio
a1c8790039
wolfssl: preserve early-data handling across WANT_WRITE retries
...
The early-data logic setups "early" exits in Accept/Connect state machine so
that the data exchanged during the handshake can be delivered to the
caller.
After the caller process the data, it usually calls Accept/Connect again
to cotinue the handshake.
Under non-blocking I/O there is the chance that these early exits are
skipped, this commit fixes that.
Server-side accept (TLS 1.3/DTLS 1.3) could skip the early-data shortcut
whenever sending the Finished flight first hit WANT_WRITE: when Accept
is called again and the data is eventually flushed into the I/O layer
the accept state is advanced past TLS13_ACCEPT_FINISHED_SENT, so the
next wolfSSL_accept() call skipped the block that marks
SERVER_FINISHED_COMPLETE and lets the application drain 0-RTT data. By
keeping the FALL_THROUGH into TLS13_ACCEPT_FINISHED_SENT and only
returning early while that handshake flag is still unset, we revisit the
shortcut immediately after the buffered flight is delivered, preserving
the intentional behaviour even under non-blocking I/O.
On the client, the same pattern showed up after SendTls13ClientHello()
buffered due to WANT_WRITE: after flushing, the connect state is already
CLIENT_HELLO_SENT so the early-data exit is no longer executed. We now
fall through into the CLIENT_HELLO_SENT case and only short-circuit once
per handshake, ensuring the reply-processing loop still executes on the
retry.
2025-12-22 09:51:05 +01:00
Hideki Miyazaki
fc583d068f
add SK-S7G2 support
...
Update README based on copilot suggestion
2025-12-20 10:32:09 +09:00
Kareem
adf38007f4
Document wolfSSL_CTX_New's behavior on failure around WOLFSSL_METHOD.
...
Fixes #9517 .
2025-12-19 17:19:45 -07:00
Kareem
ac98505204
Document wolfSSL_CTX_set_default_passwd_cb and wolfSSL_CTX_set_default_passwd_cb_userdata.
...
Fixes #6008 .
2025-12-19 17:18:45 -07:00
Kareem
7c4feb5e87
Improve the error message returned by BAD_KEY_SHARE_DATA.
...
Fixes #9084 .
2025-12-19 17:17:33 -07:00
Kareem
5b473f6b9b
Add SSL_get_rfd and SSL_get_wfd.
...
Fixes https://github.com/wolfSSL/wolfssl-nginx/issues/25 .
2025-12-19 17:16:35 -07:00
Kareem
b6766106c8
Add documentation for Base16_Encode and Base64_Encode's behavior of adding a NULL terminator byte.
...
Fixes #5602
2025-12-19 17:15:44 -07:00
Kareem
a1999d29ed
Only enforce !NO_FILESYSTEM for WOLFSSL_SYS_CA_CERTS on non Windows/Mac systems.
...
wolfSSL's support for WOLFSSL_SYS_CA_CERTS uses APIs which don't depend on !NO_FILESYSTEM
on Windows/Mac.
Fixes #8152 .
2025-12-19 16:37:50 -07:00
JacobBarthelmeh
0a0c43054f
Merge pull request #9564 from douzzer/20251219-fixes
...
20251219-fixes
2025-12-19 16:24:20 -07:00
Kareem
3e59b83727
Only keep /dev/urandom open, close /dev/random after each use.
...
Improve logic for opening RNG seed FD.
2025-12-19 15:57:49 -07:00
Kareem
fe105d4b48
Add a flag which allows requesting exactly SEED_SZ and using the full seed to instantiate the DRBG during RNG init.
...
This flag can not be used with FIPS.
2025-12-19 15:25:15 -07:00
David Garske
1cb2231ff5
Added build option to allow certificate CA matching using AKID with signers SKID ( WOLFSSL_ALLOW_AKID_SKID_MATCH). Fixed issue with cert->extAuthKeyIdSz not being set with ASN template code.
2025-12-19 14:14:39 -08:00
Daniel Pouzzner
a7550346dd
wolfcrypt/test/test.c: in rng_seed_test(), fix gates for FIPS 5.2.4.
2025-12-19 15:50:27 -06:00
Daniel Pouzzner
d3f74557fe
wolfcrypt/src/wolfentropy.c: add volatile attribute to entropy_memuse_initialized declaration; in wc_Entropy_Get(), if HAVE_FIPS, call Entropy_Init() if necessary, to accommodate FIPS KATs; in Entropy_Init(), add thread safety.
2025-12-19 15:45:17 -06:00
JacobBarthelmeh
d5723d0d89
Merge pull request #9544 from julek-wolfssl/gh/9362
...
Check KeyShare after HRR
2025-12-19 14:36:31 -07:00
David Garske
1825bd86f5
Merge pull request #9550 from JacobBarthelmeh/caam
...
sanity checks on buffer size with AES and CAAM Integrity use
2025-12-19 11:03:40 -08:00
JacobBarthelmeh
d26c11c626
Merge pull request #9551 from josepho0918/iar
...
Add IAR support to WC_OFFSETOF macro
2025-12-19 11:36:33 -07:00
JacobBarthelmeh
8153ea6189
Merge pull request #9559 from cconlon/pkcs7SignedNonOctet
...
Fix PKCS#7 SignedData parsing for non-OCTET_STRING content types
2025-12-19 11:12:06 -07:00
Daniel Pouzzner
6f95a9c58e
wolfcrypt/src/random.c: in _InitRng(), remove "drbg_instantiated" conditional cleanup logic (Coverity true-benign-positive: DEADCODE because drbg_instantiated is always false when ret != DRBG_SUCCESS).
2025-12-19 10:30:14 -06:00
Daniel Pouzzner
fb26b2dfe1
wolfcrypt/test/test.c: in HMAC tests, initialize ret, to silence uninitvar from cppcheck-force-source.
2025-12-19 09:07:14 -06:00
Daniel Pouzzner
96c47cd18c
wolfcrypt/test/test.c: in _rng_test(), inhibit the WC_RESEED_INTERVAL subtest if an rng callback is installed.
2025-12-19 08:55:35 -06:00
Juliusz Sosinowicz
dd35f10b57
ed25519: validate presence of keys in export functions
2025-12-19 10:14:26 +01:00
JacobBarthelmeh
a3072c7a8d
fix for shadows global declaration warning
2025-12-18 17:18:39 -07:00
Chris Conlon
afe82b9512
Fix PKCS#7 degenerate detection based on signerInfos length
2025-12-18 16:28:03 -07:00
Chris Conlon
d6dcd30736
Fix PKCS#7 streaming for non OCTET STRING content types
2025-12-18 16:28:01 -07:00
JacobBarthelmeh
bbc3a72ea8
Merge pull request #9556 from julek-wolfssl/rng-tools-timeout-fix
...
rng-tools: increase jitter timeout
2025-12-18 15:59:42 -07:00
Kareem
b0b840aa0f
Rename fdOpen to seedFdOpen to avoid potential conflicts.
...
Gate keeping the seed FD open behind WOLFSSL_KEEP_RNG_SEED_FD_OPEN and only
enable by default for HAProxy. It is causing issues on OS X and may
cause issues on other OSes, and is generally a major behavior change.
2025-12-18 15:55:35 -07:00
Kareem
c238defe23
Add cast for public_size
2025-12-18 15:32:59 -07:00
Kareem
755097d512
Track if RNG seed FD was opened and only close it if it was already open. This fixes the case where wc_FreeRng is called when _InitRng was not called on the RNG. Since the FD value defaults to 0 before _InitRng was called, and 0 is potentially a valid FD, it was being closed.
2025-12-18 15:27:00 -07:00
JacobBarthelmeh
4162f24434
Merge pull request #9555 from embhorn/zd20964
...
Null deref check in Pkcs11ECDH
2025-12-18 15:14:35 -07:00
Chris Conlon
5eef52c6fa
Add test for PKCS#7 SignedData with non-OCTET_STRING content
2025-12-18 15:02:02 -07:00
Kareem
81d32f4fe6
Move Curve25519 public key check to make_pub/make_pub_blind to cover the case where they are called directly by an application.
2025-12-18 14:37:59 -07:00
David Garske
4e96b11cce
Merge pull request #9557 from douzzer/20251218-fixes
...
20251218-fixes
2025-12-18 12:35:44 -08:00
Kareem
0420c942a0
Only use -1 for uninitialized fds as 0 is a valid fd.
2025-12-18 11:22:22 -07:00
Kareem
2e83b97909
Only attempt to close RNG file descriptor on platforms with XCLOSE.
2025-12-18 11:15:33 -07:00
Kareem
fb880e943b
Reset fd after closing it.
2025-12-18 11:15:33 -07:00
Kareem
6bcbfec200
Initalize RNG seed fd in _InitRng.
2025-12-18 11:15:33 -07:00
Kareem
ea43bcba72
Keep RNG seed file descriptor open until the RNG is freed.
2025-12-18 11:15:33 -07:00
Daniel Pouzzner
8a8ef3512e
src/internal.c: in FreeSSL_Ctx(), use wolfSSL_RefWithMutexFree(&ctx->ref), matching refactor in #8187 .
2025-12-18 11:48:31 -06:00
Juliusz Sosinowicz
4e15ccec35
rng-tools: increase jitter timeout
2025-12-18 18:40:54 +01:00
Daniel Pouzzner
83e9a0780f
wolfcrypt/src/wc_lms.c: fix leak in wc_LmsKey_Reload().
2025-12-18 11:09:37 -06:00
Daniel Pouzzner
59b3219c0f
wolfcrypt/test/test.c: fix memory leaks in Hmac tests.
2025-12-18 10:47:21 -06:00
Eric Blankenhorn
d1a4677a8a
Null deref check in Pkcs11ECDH
2025-12-18 10:10:57 -06:00
Marco Oliverio
988ba340ba
address reviewer's comments
2025-12-18 10:28:54 +01:00
Masaki I.
42e324e545
[JA] Fix issues with the API documentation
2025-12-18 18:08:59 +09:00
Joseph Chen
1484fb5069
Add IAR support to WC_OFFSETOF macro
2025-12-18 15:46:35 +08:00
Sean Parkinson
a103f5af8b
Merge pull request #9545 from douzzer/20251211-DRBG-SHA2-smallstackcache-prealloc
...
20251211-DRBG-SHA2-smallstackcache-prealloc
2025-12-18 10:07:37 +10:00
Sean Parkinson
b7e69fb2f3
Merge pull request #9543 from kareem-wolfssl/zd20944
...
Check Curve25519 public key after generating one to avoid generating invalid keys.
2025-12-18 09:29:58 +10:00
JacobBarthelmeh
911e996a8d
Merge pull request #9546 from SparkiDev/curve25519_base_smul_improv
...
Curve25519: improved smul
2025-12-17 15:28:56 -07:00
JacobBarthelmeh
498b86fabd
Merge pull request #9542 from holtrop-wolfssl/rust-wolfssl-wolfcrypt-crate
...
Create wolfssl-wolfcrypt Rust crate
2025-12-17 12:17:51 -07:00
Daniel Pouzzner
b23f59f137
Merge pull request #9540 from sameehj/linuxkm_tegra_fips_fixes
...
linuxkm: fix Tegra Yocto FIPS build issues (ARM64, RT, PIE)
2025-12-17 12:49:23 -06:00
JacobBarthelmeh
04a06fee0f
Merge pull request #9535 from philljj/kernel_readme
...
linuxkm: add a readme.
2025-12-17 11:32:58 -07:00
JacobBarthelmeh
a2ab7b3e80
Merge pull request #9548 from julek-wolfssl/fix-os-check-cflags
...
Fix incorrect use of CFLAGS in os-check
2025-12-17 10:37:44 -07:00
JacobBarthelmeh
39a903b30c
Merge pull request #9549 from embhorn/zd20965
...
Fix MQX example null deref
2025-12-17 10:35:43 -07:00
JacobBarthelmeh
16e035d692
Merge pull request #9547 from SparkiDev/aesgcm_ossl_arm32_asm_fix
...
AES-GCM ARM32/Thumb2 ASM: don't change aes->reg in decrypt
2025-12-17 10:33:38 -07:00
JacobBarthelmeh
393dab2151
Merge pull request #9524 from julek-wolfssl/zephyr-cpp
...
Updates for latest zephyr with cpp
2025-12-17 10:30:18 -07:00
JacobBarthelmeh
e93835acd9
sanity checks on buffer size with AES and CAAM Integrity use
2025-12-17 10:15:32 -07:00
Daniel Pouzzner
fc7d4ffad4
PR#9545 20251211-DRBG-SHA2-smallstackcache-prealloc addressing peer review: clear dest if necessary in InitHandshakeHashesAndCopy(), style tweaks in random.c, explanatory comments in sha512.c.
2025-12-17 11:07:22 -06:00
Daniel Pouzzner
33fc601011
tweaks from PRBs results:
...
tests/api.c:
* remove inapt SSL_library_init() in test_wolfSSL_EVP_Cipher_extra();
* move TEST_X509_DECLS to follow TEST_DECL(test_wolfSSL_Init);
tests/api/test_random.c: enlarge seed buffer in test_wc_RNG_TestSeed() to accommodate amdrand block size;
tests/quic.c: wrap exercises in wolfSSL_Init()...wolfSSL_Cleanup();
tests/unit.c: in unit_test(), add several more fflush(stdout)s, report error from wolfSSL_Cleanup(), and fix line length;
wolfcrypt/test/test.c: omit reseed test in _rng_test() if HAVE_INTEL_RDRAND or old FIPS, and use simplified random_test() if HAVE_INTEL_RDRAND;
wolfssl/wolfcrypt/mem_track.h: add memList pointer in struct memoryStats, and set it in InitMemoryTracker();
wolfssl/wolfcrypt/settings.h: undefine WOLFSSL_SMALL_STACK_CACHE if WOLFSSL_SMALL_STACK is undefined;
.github/workflows/trackmemory.yml: add --enable-intelrdseed scenario.
2025-12-17 11:01:11 -06:00
Daniel Pouzzner
e159c650ea
.wolfssl_known_macro_extras: add CONFIG_CRYPTO_DRBG.
2025-12-17 11:01:10 -06:00
Daniel Pouzzner
79d1e6b295
.github/workflows/trackmemory.yml: new workflow testing various configs with -DWC_RNG_SEED_CB -DWOLFSSL_TRACK_MEMORY -DWOLFSSL_DEBUG_MEMORY.
2025-12-17 11:01:10 -06:00
Daniel Pouzzner
fb82bdbc35
wolfcrypt/test/test.c:
...
* in wolfcrypt_test_main(), when WOLFSSL_TRACK_MEMORY, check and error if wc_MemStats_Ptr->currentBytes > 0;
* don't call the hash initialization APIs for hash structs that are later copied over with the hash copy API (sha224_test(), sha256_test(), sha512_test(), etc)
* in hash_test(), either wc_HashNew() or wc_HashInit(), not both (fixes leaks);
* in hmac_*_test(), add test coverage for wc_HmacCopy();
* in _rng_test(), when WOLFSSL_TRACK_MEMORY && WOLFSSL_SMALL_STACK_CACHE, check that wc_MemStats_Ptr->totalAllocs doesn't increase when wc_RNG_GenerateBlock() is called, and if HAVE_HASHDRBG) && !CUSTOM_RAND_GENERATE_BLOCK, check that forcing a reseed doesn't result in an increase.
* add missing context cleanups in openSSL_evpMD_test().
2025-12-17 11:01:10 -06:00
Daniel Pouzzner
8bd0fb0e4b
wolfcrypt/src/random.c and wolfssl/wolfcrypt/random.h: refactor WOLFSSL_SMALL_STACK_CACHE support to eliminate all heap calls after init and before cleanup.
...
* add DRBG_internal.{seed_scratch,digest_scratch}
* add WC_RNG.{drbg_scratch,health_check_scratch,newSeed_buf}
* refactor to implement new WOLFSSL_SMALL_STACK_CACHE dynamics:
* wc_RNG_HealthTestLocal()
* Hash_df()
* Hash_gen()
* Hash_DRBG_Generate()
* Hash_DRBG_Instantiate()
* _InitRng()
* PollAndReSeed()
* wc_FreeRng()
* wc_RNG_HealthTest_ex_internal()
* wc_RNG_HealthTest_ex()
* wc_RNG_HealthTestLocal()
* refactor out WOLFSSL_KERNEL_MODE gates (now all WOLFSSL_SMALL_STACK_CACHE)
2025-12-17 11:01:10 -06:00
Daniel Pouzzner
2b28931855
wolfcrypt/src/sha256.c and wolfcrypt/src/sha512.c: in WOLFSSL_SMALL_STACK_CACHE builds, allocate shafoo->W at init or context copy time, rather than in the transform function. for the SHA512 family, allocate additional space in W for "buffer" in wc_Sha512Transform().
2025-12-17 11:01:10 -06:00
Daniel Pouzzner
525266c467
wolfssl/wolfcrypt/mem_track.h and wolfcrypt/src/memory.c: add WOLFSSL_API extern memoryStats *wc_MemStats_Ptr, set by InitMemoryTracker() and cleared by CleanupMemoryTracker(), allowing public access to the memory statistics.
...
tests/unit.c: at end of unit_test(), when WOLFSSL_TRACK_MEMORY, explicitly wolfSSL_Cleanup() then check and error if wc_MemStats_Ptr->currentBytes > 0.
2025-12-17 11:01:10 -06:00
Daniel Pouzzner
1e38a1011e
wolfcrypt/src/wolfentropy.c: in wc_Entropy_Get():
...
* use a bss segment allocation for noise, to avoid a heap allocation (access is already mutex-protected), and
* in the loop, WC_CHECK_FOR_INTR_SIGNALS() and WC_RELAX_LONG_LOOP().
2025-12-17 11:01:10 -06:00
Daniel Pouzzner
38b675ef68
linuxkm/lkcapi_sha_glue.c:
...
* as for other glue families, when LINUXKM_LKCAPI_REGISTER_ALL_KCONFIG, don't "#error Config conflict" if explicit LINUXKM_LKCAPI_DONT_REGISTER_foo is defined for the missing algorithm;
* in km_hmac_init(), use wc_HmacCopy() to copy p_ctx->wc_hmac to t_ctx->wc_hmac;
* in get_drbg(), when tfm == crypto_default_rng, only migrate_disable() and local_bh_disable() if preempt_count() == 0, i.e. if not in already in an uninterruptible context;
* add can_spin argument to get_drbg_n() -- wc_linuxkm_drbg_seed() can_spin, wc_mix_pool_bytes() !can_spin, and wc_crng_reseed() can_spin;
* add compile-time assert that WOLFSSL_SMALL_STACK_CACHE is defined if LINUXKM_DRBG_GET_RANDOM_BYTES;
.wolfssl_known_macro_extras: add CONFIG_CRYPTO_DRBG.
2025-12-17 11:01:10 -06:00
Daniel Pouzzner
50b51adc93
wolfcrypt/src/hmac.c and wolfssl/wolfcrypt/hmac.h: implement WOLFSSL_API wc_HmacCopy(), and remove the WOLFSSL_HMAC_COPY_HASH gate on HmacKeyCopyHash().
2025-12-17 11:01:10 -06:00
Daniel Pouzzner
8090817c11
configure.ac: when KERNEL_MODE_DEFAULTS, set ENABLED_SMALL_STACK_CACHE_DEFAULT=yes regardless of FIPS/version.
2025-12-17 11:01:10 -06:00
Daniel Pouzzner
8e03d0523c
wolfssl/test.h: add missing wc_HmacFree()s in myMacEncryptCb(), myDecryptVerifyCb(), myEncryptMacCb(), myVerifyDecryptCb().
2025-12-17 11:01:10 -06:00
Daniel Pouzzner
15fcf7095f
linuxkm/lkcapi_{dh,ecdh,ecdsa,rsa,aes}_glue.c: when LINUXKM_LKCAPI_REGISTER_ALL_KCONFIG, don't "#error Config conflict" if explicit LINUXKM_LKCAPI_DONT_REGISTER_foo is defined for the missing algorithm.
2025-12-17 11:01:10 -06:00
Daniel Pouzzner
dc0fe803a5
src/internal.c: in InitHandshakeHashesAndCopy(), don't call InitHandshakeHashes(), to avoid leaking in the later wc_FooCopy() operation.
2025-12-17 11:01:10 -06:00
Daniel Pouzzner
918b6973bd
tests/api.c: in test_wolfSSL_dtls_stateless_HashWOLFSSL(), when WOLFSSL_SMALL_STACK_CACHE, omit ssl->hsHashes from the comparison (init-time heap pointers destabilize its bit signature).
2025-12-17 11:01:10 -06:00
Daniel Pouzzner
2802e2d82b
wolfcrypt/src/rsa.c: in RsaUnPad_OAEP(), refactor volatile-based constant time mitigation to fix "using value of assignment with ‘volatile’-qualified left operand is deprecated [-Werror=volatile]" (new warning from gcc-16.0.0_p20251207, not reported by gcc-16.0.0_p20251116-r1).
2025-12-17 11:01:10 -06:00
Daniel Pouzzner
cd3e81a656
src/ssl_load.c: in ProcessBufferCert(), check ctx for nullness before accessing ctx->verifyNone (fixes -Wnull-dereference reported by multi-test dtls-no-rsa-no-dh after merge of 36e66eb763).
2025-12-17 11:01:10 -06:00
Eric Blankenhorn
d5691fe849
Fix MQX example null deref
2025-12-17 09:35:01 -06:00
Eric Blankenhorn
5aa2840bed
Fix MQX example null deref
2025-12-17 09:33:21 -06:00
Sameeh Jubran
a5f1fde955
linuxkm: fix Tegra Yocto FIPS build issues (ARM64, RT, PIE)
...
Fix multiple build and runtime issues when building wolfSSL LinuxKM FIPS
on NVIDIA Tegra (ARM64) kernels under Yocto.
- Disable ARM64 LSE atomics for out-of-tree modules to avoid jump_table
asm constraints
- Handle PREEMPT_RT mutex and spinlock differences correctly
- Avoid alt_cb_patch_nops / queued_spin_lock_slowpath on Tegra
- Remove conflicting compiler auto-var-init flags for PIE objects
- Align PIE symbol redirection with RT and Tegra kernels
This restores successful LinuxKM FIPS builds on Tegra-based Yocto systems.
Signed-off-by: Sameeh Jubran <sameeh.j@gmail.com >
2025-12-17 14:32:26 +02:00
Juliusz Sosinowicz
432f0e33f6
Fix incorrect use of CFLAGS in os-check
2025-12-17 10:28:43 +01:00
Juliusz Sosinowicz
f61bfd7805
Check KeyShare after HRR
2025-12-17 10:27:04 +01:00
Sean Parkinson
af2c6cc932
AES-GCM ARM32/Thumb2 ASM: don't change aes->reg in decrypt
...
OpenSSL compatability layer expects aes->reg to be unmodified by AES-GCM
decrypt call. ARM32/Thumb2 assembly implementation modifies buffer.
Keep a copy and restore aes->reg after call.
2025-12-17 16:04:25 +10:00
Sean Parkinson
f54266c2c6
Curve25519: improved smul
...
Use the Ed25519 base smul in Curve25519 base mul and covert to
Montogmery curve for a faster implementation.
Only when Ed25519 is compiled in or WOLFSSL_CURVE25519_USE_ED25519 is
defined.
When compiling Intel x64 assembly and Aarch64 assembly, always define
WOLFSSL_CURVE25519_USE_ED25519.
Can't use with blinding - normal C implementation.
Optimized the Curve25519 smul slightly for Intel x64 and Aarch64.
Improved the conditional table lookup on Intel x64 to use AVX2 when
available.
2025-12-17 13:25:36 +10:00
JacobBarthelmeh
b42e9a9410
Merge pull request #9529 from SparkiDev/dsa_pg_sp_int_fix
...
DSA Parameter Generation: init g earlier
2025-12-16 14:52:45 -07:00
JacobBarthelmeh
75fdf959c1
Merge pull request #9514 from kareem-wolfssl/zd20936
...
Fix uninitialized variable, fix potentially undefined printf reference in HASH_DRBG_Generate.
2025-12-16 14:48:17 -07:00
JacobBarthelmeh
9156b50bbc
Merge pull request #9538 from SparkiDev/tls13_dup_ext_alert_code_fix
...
TLS 1.3: duplicate extension alert code fix
2025-12-16 14:43:19 -07:00
JacobBarthelmeh
95afe9ca06
Merge pull request #9539 from julek-wolfssl/APP_DATA_READY-docs
...
Update APP_DATA_READY doc string
2025-12-16 14:42:39 -07:00
Juliusz Sosinowicz
ac84464140
Updates for latest zephyr with cpp
2025-12-16 17:25:18 +01:00
Josh Holtrop
9020373405
Rust crate: update CHANGELOG for v1.0.0
2025-12-16 10:08:10 -05:00
Josh Holtrop
37fa1581d3
Rust crate: bump version to 1.0.0
2025-12-16 10:04:32 -05:00
Josh Holtrop
95e8276d55
Rust crate: add CHANGELOG.md
2025-12-16 09:06:07 -05:00
Josh Holtrop
52e7801939
Rust crate: bump version
2025-12-16 09:03:10 -05:00
Josh Holtrop
357b8952c6
Rust crate: only set link-search and link-arg for local repo build
2025-12-16 09:02:34 -05:00
Marco Oliverio
0fa0fd2317
(d)tls: refactor wolfSSL_GetMaxFragSize(), simplify length computations
2025-12-16 10:46:29 +01:00
Marco Oliverio
e9f3bd5ddd
dtls: test precise header headroom computation
2025-12-16 10:00:30 +01:00
Kareem
36eda9fb75
Check Curve25519 public key after generating one to avoid generating invalid keys.
...
Thanks to Kr0emer for the report.
2025-12-15 16:31:29 -07:00
Sean Parkinson
5512c2d0b4
Merge pull request #9541 from jackctj117/empty-hash-comment
...
Added comment with empty hash use
2025-12-16 08:34:16 +10:00
Sean Parkinson
85d40c8e9b
Merge pull request #9522 from JacobBarthelmeh/time
...
tie in use of check_time with x509 store
2025-12-16 08:24:49 +10:00
Josh Holtrop
a3cc7214e7
Update include.am for Rust crate rename
2025-12-15 16:28:26 -05:00
Kareem
968662063d
Merge remote-tracking branch 'upstream/master' into zd20936
2025-12-15 14:06:18 -07:00
Josh Holtrop
447ba11379
Add README.md in wolfssl-wolfcrypt crate directory
2025-12-15 15:22:44 -05:00
Josh Holtrop
0a469d4a4d
Avoid unused variable warning in ECCPoint test
2025-12-15 13:02:55 -05:00
Sean Parkinson
d3863e5fa3
TLS 1.3: duplicate extension alert code fix
...
The specification states to return illegal_parameter when a message is
syntactically correct but semantically invalid. (RFC 8446 section 6,
Paragraph 5)
2025-12-15 10:00:56 -08:00
Josh Holtrop
8cd0c9bd11
Rust wrapper: rename wolfssl crate to wolfssl-wolfcrypt
2025-12-15 13:00:51 -05:00
jackctj117
585a8d22aa
Added comment with empty hash imofrmation
2025-12-15 10:52:24 -07:00
Daniel Pouzzner
52ee00132d
Merge pull request #9528 from SparkiDev/tls13_missing_ext_fix
...
TLS 1.3 missing extension: return correct alert code
2025-12-15 11:05:02 -06:00
Daniel Pouzzner
901ddab007
Merge pull request #9534 from rlm2002/coverity
...
20251212 Coverity fix for CID 524467
2025-12-15 11:03:18 -06:00
Daniel Pouzzner
b9368d7a3d
Merge pull request #9516 from embhorn/gh3665
...
Add checking of size param and clarify usage in doc
2025-12-15 10:49:57 -06:00
Daniel Pouzzner
7e5d1d3d6d
Merge pull request #9523 from JacobBarthelmeh/bio
...
remove unimplemented function macro
2025-12-15 10:39:55 -06:00
Daniel Pouzzner
61c72d2406
Merge pull request #9525 from JacobBarthelmeh/docs
...
public disclosure of CVE-2025-13912
2025-12-15 10:34:39 -06:00
Daniel Pouzzner
a379797482
Merge pull request #9526 from holtrop/rust-wrapper-notes
...
Rust wrapper: update crate metadata and README
2025-12-15 09:58:25 -06:00
Juliusz Sosinowicz
c73de0d133
Update APP_DATA_READY doc string
2025-12-15 12:18:10 +01:00
Sean Parkinson
dacb3425cd
DSA Parameter Generation: init g earlier
...
Ensure dsa->g is initialized with other mp_ints so that it can be
cleared at the end regardless of failures.
Don't clear tmp or tmp2 if allocation or initialization failed as you
will access uninitialized data.
2025-12-15 09:12:11 +10:00
Sean Parkinson
44be44a509
TLS 1.3 missing extension: return correct alert code
...
Change TLS 1.3 handling to return missing_extension alert code when
- KeyShare is present but SupportedGroups is missing and
- SupportedGroups is present but KeyShare is missing
Added tests for this.
2025-12-15 09:07:13 +10:00
Sean Parkinson
6e94381149
ARM64 ASM: Darwin specific address calc fix
...
Don't use ':lo12:' in Darwin specific address calculation code.
@PAGEOFF is indicating this.
2025-12-15 08:46:24 +10:00
Sean Parkinson
19cba1c462
Merge pull request #9527 from night1rider/CMAC-Compile-Issue
...
Fix wc_CmacFree() to use correct heap pointer from internal Aes structure
2025-12-15 08:34:11 +10:00
jordan
d52eb8f4d0
linuxkm: readme patch description.
2025-12-12 18:58:10 -06:00
JacobBarthelmeh
5099e6e315
add macro guard on use of time_t
2025-12-12 16:42:19 -07:00
jordan
9736427e7a
linuxkm: add a readme.
2025-12-12 17:07:07 -06:00
Kaleb Himes
6475106ce7
Merge pull request #9449 from lealem47/hash_script
...
Use only the first 64 bytes of hash output in fips-hash.sh
2025-12-12 14:47:12 -07:00
Ruby Martin
27b5ac9f84
sanitize loop bound in tls_multi_handshakes_one_record() unit test
...
add additional check for breaking while loop
2025-12-12 14:18:25 -07:00
JacobBarthelmeh
01442a1460
adjust macro guard around test case
2025-12-12 13:36:14 -07:00
Lealem Amedie
61e58f0f04
Fix for analyzer null dereference
2025-12-12 12:31:07 -07:00
Lealem Amedie
afa56497a8
Use cut command for portability
2025-12-12 12:31:07 -07:00
Lealem Amedie
7e26bc06c5
Use only the first 64 bytes of hash output in fips-hash.sh
2025-12-12 12:31:07 -07:00
Kareem
2d4e589a8d
Merge remote-tracking branch 'upstream/master' into zd20936
2025-12-12 11:37:45 -07:00
Kareem
3797c03e6c
Merge remote-tracking branch 'upstream/master' into zd20936
2025-12-12 11:37:34 -07:00
night1rider
cf42d14e10
Fix wc_CmacFree() and wc_CMAC_Grow() to use correct heap pointer from internal Aes structure
2025-12-12 11:14:16 -07:00
JacobBarthelmeh
e1bbb71878
tie in use of check_time with x509 store
2025-12-12 09:22:23 -07:00
Daniel Pouzzner
ab2196b4ca
Merge pull request #9530 from SparkiDev/arm64_asm_deadcode_fix
...
Aarch64 AES ASM no hw crypto: no dead code
2025-12-11 23:41:30 -06:00
Sean Parkinson
8e14d4a774
Aarch64 AES ASM no hw crypto: no dead code
...
Fix code so that there is no dead code compiled.
That is, change if checks to #ifdef checks.
2025-12-12 12:31:36 +10:00
Daniel Pouzzner
38d5dc6c7a
Merge pull request #9510 from embhorn/gh7981
...
Fix test when ECH and harden are enabled
2025-12-11 13:07:29 -06:00
Daniel Pouzzner
3e8c6811c7
Merge pull request #9518 from SparkiDev/api_c_split_3
...
api.c: Split out more functions
2025-12-11 13:06:58 -06:00
Daniel Pouzzner
2ffa5be427
Merge pull request #9511 from jackctj117/CertGenCache
...
Added --enable-certgencache to os-check
2025-12-11 13:03:31 -06:00
Daniel Pouzzner
9201b4e5eb
Merge pull request #9515 from anhu/salt_len_min
...
Note that HMAC_FIPS_MIN_KEY is also salt len min for HKDF
2025-12-11 13:03:06 -06:00
Daniel Pouzzner
ebbfc2e413
Merge pull request #9507 from miyazakh/add_tools_includeam
...
Add RA6M4/tools folder to include.am
2025-12-11 12:46:37 -06:00
Daniel Pouzzner
ef8bf55528
Merge pull request #9495 from SparkiDev/aarch64_no_hw_crypto_asm_aes
...
Aarch64 no harware crypto assembly AES
2025-12-11 12:46:07 -06:00
Daniel Pouzzner
f26a52e2dd
Merge pull request #9494 from SparkiDev/benchmark_ecdsa_p521
...
Benchmark ECDSA: use digest size instead of key size
2025-12-11 12:43:58 -06:00
Daniel Pouzzner
093f15ca4f
Merge pull request #9496 from embhorn/zd20913
...
Enable wolfSSL_i2d_X509_NAME_canon to handle blank optional fields
2025-12-11 12:43:32 -06:00
Daniel Pouzzner
8c839b1ffc
Merge pull request #9502 from rlm2002/x509_addressIsIP
...
Run check for IP address in wolfSSL_X509_check_host()
2025-12-11 12:41:54 -06:00
Daniel Pouzzner
90521b09a4
Merge pull request #9500 from holtrop/fix-rust-eccpoint-import-tests
...
Rust wrapper: fix ECCPoint import_der_ex unit tests
2025-12-11 12:41:19 -06:00
Daniel Pouzzner
f07e379d6d
Merge pull request #9456 from anhu/test_inits
...
Initialize test variables; avoid false warnings.
2025-12-11 12:40:44 -06:00
Josh Holtrop
31f6dd7039
Rust wrapper: update crate metadata and README
2025-12-11 12:50:30 -05:00
Anthony Hu
cd4f96924b
Better error message too.
2025-12-11 12:23:38 -05:00
JacobBarthelmeh
1d448ec3b4
public disclosure of CVE-2025-13912
2025-12-11 10:22:22 -07:00
JacobBarthelmeh
d7a852af82
remove unimplemented function macro
2025-12-11 09:32:57 -07:00
cwilley
2d9d399a50
Merge pull request #9519 from douzzer/20251210-linuxkm-get_drbg-local_bh_disable
...
20251210-linuxkm-get_drbg-local_bh_disable
2025-12-11 08:02:34 -08:00
Eric Blankenhorn
67b6b284d6
Add checking of size param and clarify usage in doc
2025-12-11 08:27:57 -06:00
Sean Parkinson
b4b617de49
api.c: Split out more functions
...
More X509 function testing.
X509 store function testing.
X509 lookup function testing.
2025-12-11 19:00:19 +10:00
Sean Parkinson
0b2fb66af6
api.c: Split out more functions
...
wolfSSL_PEM, wolfSSL_X509, wolfSSL_X509_NAME, wolfSSL_X509_PUBKEY API
testing moved out to separate files.
2025-12-11 15:32:09 +10:00
Daniel Pouzzner
fe33bb9bd9
linuxkm/lkcapi_sha_glue.c:
...
* in get_drbg(), call local_bh_disable() for the crypto_default_rng, and in put_drbg(), call local_bh_enable() if needed.
* re-gate migrate_disable() and migrate_enable() so they're called for any SMP kernel >= 5.7, regardless of CONFIG_PREEMPT_COUNT.
* in get_drbg_n(), if the caller can't sleep, return immediately if the requested DRBG is busy, to avoid priority inversions and deadlocks.
2025-12-10 20:33:48 -06:00
Sean Parkinson
569a5e0388
Merge pull request #9509 from rizlik/comment_fix
...
internal.c: fix comment to be more precise
2025-12-11 10:26:52 +10:00
Sean Parkinson
b69ce5a568
Merge pull request #9506 from rlm2002/coverity
...
check if ctx and ssl are null when checking public key in certificate
2025-12-11 08:30:58 +10:00
Sean Parkinson
1faf740f10
Merge pull request #9505 from douzzer/20251209-linuxkm-GENERATE_SECTION_MAP--sections
...
20251209-linuxkm-GENERATE_SECTION_MAP--sections
2025-12-11 08:03:44 +10:00
Sameeh Jubran
4d4751bff3
Merge pull request #9512 from douzzer/20251210-linuxkm-5.17-ubuntu-jammy-tegra-patches
...
20251210-linuxkm-5.17-ubuntu-jammy-tegra-patches
2025-12-10 22:46:12 +02:00
Anthony Hu
008132c33b
Note that HMAC_FIPS_MIN_KEY is also salt len min for HKDF
2025-12-10 15:05:25 -05:00
Kareem
63976cb09b
Fix uninitialized variable, use WOLFSSL_DEBUG_PRINTF macro in Hash_DRBG_Generate to avoid undefined printf reference.
2025-12-10 12:28:54 -07:00
Daniel Pouzzner
650990e1e2
add linuxkm/patches/5.17-ubuntu-jammy-tegra/WOLFSSL_LINUXKM_HAVE_GET_RANDOM_CALLBACKS-5v17-ubuntu-jammy-tegra.patch
2025-12-10 11:51:29 -06:00
Daniel Pouzzner
ba861971eb
wolfssl/wolfcrypt/wc_port.h: don't attempt to define WC_DEPRECATED() for _MSC_VER < 1400 -- still causing error on old MSVC (now C2085 rather than C2485).
2025-12-10 11:15:55 -06:00
jackctj117
9db4aad468
Added --enable-certgencache to os-check
2025-12-10 10:14:39 -07:00
Eric Blankenhorn
8053e8f9b3
Fix test when ECH and harden are enabled
2025-12-10 08:14:59 -06:00
Marco Oliverio
33a518958c
internal.c: fix comment to be more precise
2025-12-10 14:11:07 +01:00
Takashi Kojo
6c5e84178e
Merge pull request #9371 from tamasan238/doc
...
[ja] update docs - part 1
2025-12-10 18:16:12 +09:00
Masaki Iwai
d100ff81ba
Merge branch 'master' into doc
2025-12-10 16:07:30 +09:00
Takashi Kojo
a555e211d4
Merge pull request #9405 from tamasan238/doc-2
...
[ja] update docs - part 2
2025-12-10 15:58:57 +09:00
Sean Parkinson
0ab09ab147
PPC32 SHA-256 ASM: support comnpiling for PIC
...
When compiling for PIC, 30 and 31 are not always available.
Alternative implementation added not using them that puts registers on
the stack.
Small code size version implemented as well.
2025-12-10 16:20:49 +10:00
Hideki Miyazaki
090d89acbc
add RA6M4/tools folder to include.am
2025-12-10 10:18:26 +09:00
Ruby Martin
36e66eb763
check if ctx and ssl are null when checking public key in certificate
2025-12-09 17:04:05 -07:00
David Garske
f18fdcae91
Merge pull request #9501 from JacobBarthelmeh/xcode
...
Fix for XCODE build with ARM assembly
2025-12-09 15:38:31 -08:00
Daniel Pouzzner
41b2fc28b3
wolfssl/wolfcrypt/wc_port.h: add WC_DEPRECATED() definitions for _MSC_VER < 1400.
2025-12-09 17:15:48 -06:00
Daniel Pouzzner
d210b92a16
linuxkm/Makefile: tweak GENERATE_SECTION_MAP recipe to expect --sections output from readelf, and feed that to it, to work around missing section names in --symbols output on binutils <2.36.
2025-12-09 17:03:16 -06:00
Sean Parkinson
80b7ea638e
Aarch64 no harware crypto assembly AES
...
Implementations of AES-ECB, AES-CBC, AES-CTR, AES-GCM, AES-XTS with base
instructions and NEON but not using crypto instructions.
Benchmark of AES-ECB added.
Updated AES tests.
2025-12-10 08:55:58 +10:00
David Garske
c9fbad2bc3
Merge pull request #9504 from julek-wolfssl/cov-20251203
...
Fix uninit variables
2025-12-09 09:24:05 -08:00
Juliusz Sosinowicz
24b35badb4
Fix uninit variables
2025-12-09 17:07:40 +01:00
JacobBarthelmeh
c05f0680c6
remove trailing whitespace
2025-12-09 07:00:50 -07:00
JacobBarthelmeh
5873142403
add xcode github actions build test
2025-12-08 14:42:51 -07:00
JacobBarthelmeh
ea058c6e85
xcode set correct file type for assembly files with project
2025-12-08 14:42:19 -07:00
Josh Holtrop
b5bea05c55
Rust wrapper: fix ECCPoint import_der_ex unit tests
2025-12-08 13:28:48 -05:00
Ruby Martin
edbca503be
Run check for IP address in wolfSSL_X509_check_host()
2025-12-08 11:04:45 -07:00
David Garske
ab1a738859
Merge pull request #9499 from holtrop/rust-32-bit-fixes
...
Rust wrapper: fix "e" param type for wc_MakeRsaKey() on 32-bit targets
2025-12-08 07:58:32 -08:00
Josh Holtrop
1b4d09d752
Rust wrapper: fix "e" param type for wc_MakeRsaKey() on 32-bit targets
2025-12-08 10:02:25 -05:00
Sean Parkinson
5a89ef9f76
Merge pull request #9497 from douzzer/20251206-old-fips-test_wc_RsaPublicEncryptDecrypt
...
20251206-old-fips-test_wc_RsaPublicEncryptDecrypt
2025-12-08 20:32:21 +10:00
Daniel Pouzzner
12d07c4d43
tests/api/test_rsa.c: in test_wc_RsaPublicEncryptDecrypt(), add FIPS gate around new test coverage from #9454 ( 23c5678797).
2025-12-06 10:20:45 -06:00
Eric Blankenhorn
83f6fe1a1a
Enable wolfSSL_i2d_X509_NAME_canon to handle blank optional fields
2025-12-05 15:12:29 -06:00
Sean Parkinson
886b0c2ec6
Benchmark ECDSA: use digest size instead of key size
...
The key size can be larger than the maximum digest size supported by the
sign and verify APIs.
Calculate a reasonable digest size for the key size and bound it on the
maximum digest size.
2025-12-05 09:01:12 +10:00
David Garske
1b7072b739
Merge pull request #9493 from holtrop/build-rust-wrappers-on-arm
...
Rust wrapper: run CI tests on ARM
2025-12-04 13:54:28 -08:00
Josh Holtrop
379ec8a23e
Rust wrapper: run CI tests on ARM
2025-12-04 15:49:55 -05:00
David Garske
fd58885887
Merge pull request #9490 from douzzer/20251202-linuxkm-old-kernel-fixes
...
20251202-linuxkm-old-kernel-fixes
2025-12-04 11:42:00 -08:00
JacobBarthelmeh
5b7480486e
Merge pull request #9487 from dgarske/qathash
...
Fix QAT hash final with no update and fix g++ warnings
2025-12-04 11:35:46 -07:00
David Garske
f01c4f10fa
Merge pull request #9454 from SparkiDev/rsa_dec_too_small_output_fix
...
RSA decrypt: don't write past buffer end on error
2025-12-04 10:06:37 -08:00
David Garske
1dfa4d1bcf
Merge pull request #9488 from SparkiDev/aes_gcm_4bit_be
...
AES-GCM, 4-bit table, Big Endian: fast impl of GMULT
2025-12-04 10:06:06 -08:00
David Garske
003f2385b9
Merge pull request #9491 from SparkiDev/sha256_armasm_small
...
ARM32/Thumb2 ASM SHA-256: provide small code size option
2025-12-04 10:05:01 -08:00
David Garske
1ebecb68c8
Merge pull request #9484 from holtrop/add-rust-wrapper-build-configs
...
Add several library configurations from os-check.yml to the Rust wrapper CI build
2025-12-04 08:00:24 -08:00
Daniel Pouzzner
e225bf80af
linuxkm/linuxkm_wc_port.h: move WOLFSSL_API_PREFIX_MAPping of GetCAByAKID to wolfSSL_GetCAByAKID from wolfssl/internal.h to wolfssl/wolfcrypt/asn.h, with an additional needed early mapping in linuxkm/linuxkm_wc_port.h.
2025-12-04 09:58:52 -06:00
Daniel Pouzzner
690cce67d1
linuxkm/linuxkm_wc_port.h: add -Wattributes to suppression list while including kernel headers.
2025-12-04 09:34:22 -06:00
Daniel Pouzzner
64ebc342a1
linuxkm/lkcapi_sha_glue.c: in wc_linuxkm_drbg_generate(), generate randomness in batches that fit in RNG_MAX_BLOCK_LEN.
2025-12-04 09:34:22 -06:00
Daniel Pouzzner
aad0f7f184
linuxkm: move definition of WOLFSSL_DEBUG_PRINTF_FN from wolfssl/wolfcrypt/logging.h to linuxkm/linuxkm_wc_port.h.
2025-12-04 09:34:22 -06:00
Daniel Pouzzner
783e583169
linuxkm/linuxkm_wc_port.h:
...
* add backported definition of static_assert();
* add version-gated include for asm-generic/simd.h;
* add version gate for crypto/internal/simd.h.
2025-12-04 09:34:22 -06:00
Josh Holtrop
10a12b76e6
Rust wrapper: support more wolfcrypt build configurations
2025-12-04 09:09:04 -05:00
Sean Parkinson
bff29a8535
ARM32/Thumb2 ASM SHA-256: provide small code size option
...
WOLFSSL_ARMASM_SHA256_SMALL for Thumb2 and ARM32 using base instructions
compiles implementations that are smaller but slower.
2025-12-04 16:44:37 +10:00
Sean Parkinson
2b726ebf0b
Merge pull request #9386 from sebastian-carpenter/oss-fuzz-fix-442261624
...
fixed oss-fuzz warnings
2025-12-04 15:28:18 +10:00
Masaki Iwai
42990f7eec
Merge branch 'master' into doc
2025-12-04 13:38:25 +09:00
David Garske
0aa789a289
Merge pull request #9458 from LinuxJedi/doc_fixes
...
Fix issues with the API documentation
2025-12-03 09:23:23 -08:00
David Garske
45b7fb9e39
Merge pull request #9489 from julek-wolfssl/zd/20860
...
Fix AKID CA lookup
2025-12-03 08:16:51 -08:00
Andrew Hutchings
2376e484d8
Fix return values
2025-12-03 15:21:11 +00:00
Andrew Hutchings
590a02e541
Fix Doxygen parameters
2025-12-03 15:15:32 +00:00
Andrew Hutchings
c4e9ca4eca
Fix some errors in the doc edits
2025-12-03 14:56:52 +00:00
Juliusz Sosinowicz
22eedeea86
fixup! tests: add unit coverage for GetCAByAKID
2025-12-03 13:26:12 +01:00
Juliusz Sosinowicz
32c6f8f2a0
Fix prefix errors
2025-12-03 11:36:39 +01:00
Juliusz Sosinowicz
995e63f6e1
Fix AKID CA lookup
...
The `authorityCertIssuer` field refers to the Issuer field of the CA being looked up and not its Subject field.
2025-12-03 10:47:40 +01:00
Juliusz Sosinowicz
7b82224462
tests: add unit coverage for GetCAByAKID
2025-12-03 10:47:40 +01:00
Masaki I.
0c9a5620d7
add ending newline
2025-12-03 13:39:09 +09:00
Masaki I.
65d844dba2
[ja] update docs 2
2025-12-03 13:22:16 +09:00
Sean Parkinson
697bc47d8e
AES-GCM, 4-bit table, Big Endian: fast impl of GMULT
...
Add fast implementation GMULT for big-endian platforms like PowerPC and
PowerPC64.
Speeds up AES-GCM.
2025-12-03 11:22:49 +10:00
Daniel Pouzzner
3062d15240
Merge pull request #9485 from philljj/bsdkm_cleanup
...
bsdkm: return cleanup.
2025-12-02 16:47:26 -06:00
David Garske
628c1e5225
Fix g++ compiler implicit cast warnings
2025-12-02 10:54:16 -08:00
David Garske
6deef7c14a
QAT fix to properly handle a finish with no update
2025-12-02 09:57:12 -08:00
David Garske
6d55b42cf6
Merge pull request #9483 from josepho0918/mqx
...
Enhance MQX platform support and integration
2025-12-02 07:58:49 -08:00
David Garske
dd40417fca
Merge pull request #9479 from josepho0918/aes-cbc-mmcau
...
Prefer ARMASM over MMCAU for AES CBC when both enabled
2025-12-02 07:58:17 -08:00
Josh Holtrop
08f2b36678
Add several library configurations from os-check.yml to the Rust wrapper CI build
2025-12-02 10:52:05 -05:00
Daniel Pouzzner
bc615a26e9
Merge pull request #9478 from sameehj/fix-tegra
...
linuxkm: Fix spinlock initialization on Tegra kernels for __SPIN_LOCK…
2025-12-02 09:24:00 -06:00
David Garske
2f1be0f0d4
Merge pull request #9486 from julek-wolfssl/hostap-sha-cert-update
...
Update sha384 and sha512 certs
2025-12-02 06:55:35 -08:00
Juliusz Sosinowicz
c63df82f0d
Update sha384 and sha512 certs
...
- Print errors in logs on failure
2025-12-02 10:46:43 +01:00
Masaki Iwai
801d9bfa3d
Merge branch 'master' into doc
2025-12-02 14:14:01 +09:00
David Garske
8741805e9d
Merge pull request #9476 from embhorn/zd20515
...
Fix Coverity dead code report
2025-12-01 13:59:21 -08:00
David Garske
a2f46cd9b0
Merge pull request #9470 from lealem47/MLKEM_PUB_HASH_E
...
ML-KEM: Add check for Pubkey hash mismatch on decoding the dk
2025-12-01 12:49:48 -08:00
jordan
cd99aa2f0e
bsdkm: return cleanup.
2025-12-01 09:43:15 -06:00
Sameeh Jubran
9a699c04ea
linuxkm: Fix spinlock initialization on Tegra kernels for __SPIN_LOCK_UNLOCKED macro incompatibility
...
Tegra vendor kernels (L4T / NVIDIA Yocto BSP) fail to compile the
wolfSSL Linux kernel module due to the use of the legacy assignment form
of the spinlock initializer:
m->lock = __SPIN_LOCK_UNLOCKED(m);
On Tegra, __SPIN_LOCK_UNLOCKED() expands to a braced-struct initializer
that is *not* valid as an assignment expression, causing:
error: expected expression before '{' token
This patch applies a Tegra-specific workaround by replacing the
assignment with the stable kernel API:
spin_lock_init(&m->lock);
This is guarded behind CONFIG_ARCH_TEGRA so that non-Tegra platforms
retain the current initialization behavior until further validation is
completed.
This fix restores successful kernel module builds on NVIDIA Tegra-based
Yocto images without modifying behavior on other architectures.
Signed-off-by: Sameeh Jubran <sameeh@wolfssl.com >
2025-11-27 10:08:55 +02:00
Joseph Chen
10efcd9787
Enhance MQX platform support and integration
2025-11-27 10:03:04 +08:00
Sean Parkinson
93944d289f
Merge pull request #9482 from anhu/move_the_sigalg_check
...
Need to move sigalg check down because it does not consider hybrids.
2025-11-27 09:42:18 +10:00
Sean Parkinson
e30e9b7e09
Merge pull request #9473 from holtrop/rust-cargo-clippy
...
Rust wrapper: enable cargo clippy and fix several clippy warnings
2025-11-27 09:18:51 +10:00
Sean Parkinson
6c8b9054a0
Merge pull request #9443 from holtrop/report-rsa_pss_pss-sig-algo
...
TLSv1.3 certificate verify: report rsa_pss_pss_* signature algorithm when supported
2025-11-27 09:12:58 +10:00
Sean Parkinson
6a5e29e21d
Merge pull request #9477 from douzzer/20251125-linuxkm-arm-fips-tweaks
...
20251125-linuxkm-arm-fips-tweaks
2025-11-27 09:03:36 +10:00
Anthony Hu
a02b61a9db
Merge pull request #9475 from douzzer/20251125-aes-arm-fixes
...
20251125-aes-arm-fixes
2025-11-26 14:11:23 -05:00
Anthony Hu
a765bbdb79
Need to move sigalg check down because it does not consider hybrids.
2025-11-26 13:31:21 -05:00
Josh Holtrop
36418aca76
Set useRsaPss flag in both SSL and CTX structures
2025-11-26 10:30:38 -05:00
Joseph Chen
26206821ff
Prefer ARMASM over MMCAU for AES CBC when both enabled
2025-11-26 16:05:05 +08:00
Daniel Pouzzner
be1f916028
wolfcrypt/src/aes.c: in the WOLFSSL_ARMASM && GCM_SMALL && !__aarch64__ static C implementation of GCM_gmult_len(), rename to GCM_gmult_len_armasm_C() (incompatible with other implementations);
...
wolfcrypt/src/aes.c: move FREESCALE_MMCAU implementations later (minimum precedence) for wc_AesEncrypt(), wc_AesDecrypt(), wc_AesSetKeyLocal(), wc_AesSetKey(), and wc_AesSetKeyDirect() (fixes ZD#20862).
2025-11-25 23:01:05 -06:00
Daniel Pouzzner
f5543f6b95
wolfcrypt/test/test.c: in wolfcrypt_test_main(), install myFipsCb if applicable, and save failed wolfCrypt retvals to args.return_code to assure error exit. fixes FIPS integrity failure message with wolfEntropy.
2025-11-25 20:21:37 -06:00
Daniel Pouzzner
4fda0883a4
globally rename WC_PIE_RELOC_TABLES to WC_SYM_RELOC_TABLES;
...
globally replace defined(__PIE__) with defined(WC_CONTAINERIZE_THIS) to decouple containerization from -fPIE;
configure.ac:
* add --enable-kernel-reloc-tables as an alias for --enable-linuxkm-pie;
* always activate ENABLED_ENTROPY_MEMUSE_DEFAULT when KERNEL_MODE_DEFAULTS and not RDSEED/RDRAND, regardless of FIPS presence/version;
linuxkm/Kbuild:
* add -DWC_CONTAINERIZE_THIS to PIE_FLAGS;
* add support for NO_PIE_FLAG, which inhibits -fPIE on ENABLED_LINUXKM_PIE builds, and adds -DWC_NO_PIE_FLAG to PIE_FLAGS;
linuxkm/linuxkm_wc_port.h: add setup for WC_LINUXKM_WOLFENTROPY_IN_GLUE_LAYER;
linuxkm/module_hooks.c: add wc_linuxkm_GenerateSeed_wolfEntropy().
2025-11-25 18:01:25 -06:00
David Garske
0aaa31c438
Merge pull request #9459 from JacobBarthelmeh/async
...
fix small stack define and warnings for g++ build with async
2025-11-25 14:22:24 -08:00
David Garske
6fc99ac6d8
Merge pull request #9431 from Pushyanth-Infineon/psoc6_aes_support
...
Enable hardware acceleration for AES on PSoC6.
2025-11-25 13:31:23 -08:00
Eric Blankenhorn
6de31e95fc
Fix Coverity dead code report
2025-11-25 13:53:36 -06:00
Josh Holtrop
bfce171836
Rust wrapper: enable cargo clippy and fix several clippy warnings
2025-11-25 08:22:02 -05:00
Sean Parkinson
0afbc1ef08
Merge pull request #9471 from douzzer/20251124-memory_test-wolfSSL_Atomic_Ptr_CompareExchange
...
20251124-memory_test-wolfSSL_Atomic_Ptr_CompareExchange
2025-11-25 19:22:22 +10:00
JacobBarthelmeh
a83fb4fc42
revert 6bda10a forcing small stack with async
2025-11-25 00:43:04 -07:00
Daniel Pouzzner
e459b21744
wolfcrypt/src/wc_port.c and wolfssl/wolfcrypt/wc_port.h: add volatile attribute to wolfSSL_Atomic_Uint_CompareExchange() first arg, for pedantic accuracy;
...
wolfssl/internal.h and src/ssl.c: add volatile attribute to WOLFSSL_CTX.privateKeyPKey pointer, for pedantic accuracy;
wolfcrypt/test/test.c: in memory_test(), use compatible pointers for all operands in the wolfSSL_Atomic_Ptr_CompareExchange() test, to avoid undefined behavior.
2025-11-24 18:21:09 -06:00
Lealem Amedie
eace02115b
Address review feedback
2025-11-24 16:57:52 -07:00
Sean Parkinson
ea0793f0af
Merge pull request #9428 from dgarske/qat_v5.8.4
...
Migrate wolfAsyncCrypt repo into wolfSSL proper
2025-11-25 09:33:31 +10:00
Sean Parkinson
7c8d7dff5e
Merge pull request #9348 from effbiae/ExportEccTempKey
...
Refactor: Extract ExportEccTempKey, DhSetKey, and other helper functions from SendServerKeyExchange
2025-11-25 09:31:20 +10:00
Sean Parkinson
ed7ace504f
Merge pull request #9434 from embhorn/zd20802
...
Clarify return value of wc_RsaSSL_Verify/Inline
2025-11-25 09:28:26 +10:00
Sean Parkinson
9c467a916a
Merge pull request #9437 from rlm2002/coverity
...
20251114 Coverity change
2025-11-25 09:26:17 +10:00
Sean Parkinson
86789f92c0
Merge pull request #9446 from dgarske/stm32_castwarn
...
Fix stm32.c type warnings
2025-11-25 09:22:58 +10:00
Sean Parkinson
76fec60754
Merge pull request #9448 from anhu/p7_unknownExt
...
unknown extension support in wc_PKCS7_EcdsaVerify
2025-11-25 09:21:47 +10:00
Sean Parkinson
c6ecafced2
Merge pull request #9451 from kaleb-himes/ESV-DRBG-Decouple
...
Esv drbg decouple
2025-11-25 09:19:52 +10:00
Sean Parkinson
89f27ceb19
Merge pull request #9453 from holtrop/rust-wc-random-additions
...
Rust wrapper: add HAVE_HASHDRBG RNG functions
2025-11-25 09:18:12 +10:00
Sean Parkinson
eac5c29fdb
Merge pull request #9455 from holtrop/rust-wc-init-cleanup
...
Rust wrapper: wrap wolfCrypt_Init() and wolfCrypt_Cleanup()
2025-11-25 09:17:23 +10:00
David Garske
4ccad17a39
Merge pull request #9465 from SparkiDev/aesgcm_small_armasm
...
AES-GCM small ARM asm: add back implementation
2025-11-24 15:06:49 -08:00
David Garske
0786aa2585
Merge pull request #9464 from SparkiDev/sp_384_sub_fix
...
SP Thumb2/ARM32: P-384 sub not needed for small builds
2025-11-24 15:05:43 -08:00
Sean Parkinson
d49c76945a
Merge pull request #9468 from josepho0918/mmcau
...
Correct SHA256 final endianness on MMCAU platforms
2025-11-25 08:38:21 +10:00
Josh Holtrop
d766b82bac
Remove conditional and just assign boolean result
2025-11-24 15:55:32 -05:00
Lealem Amedie
f5cb791e39
ML-KEM: Add check for Pubkey hash mismatch on decoding the dk
2025-11-24 10:22:40 -07:00
Joseph Chen
7752df3340
Correct SHA256 final endianness on MMCAU platforms
2025-11-24 16:48:35 +08:00
Sean Parkinson
ba47f7f333
AES-GCM small ARM asm: add back implementation
...
Implementation of GCM mult with length for ARM asm and small GCM was
added to armv8-aes.c but got lost when code pulled back to aes.c.
2025-11-24 11:08:18 +10:00
Sean Parkinson
46c704f51f
SP Thumb2/ARM32: P-384 sub not needed for small builds
...
Don't have an implementation of sp_384_sub when building for small code
size.
2025-11-24 10:45:36 +10:00
JacobBarthelmeh
c5fb83f52d
fix warnings for g++ build with async
2025-11-21 14:38:40 -07:00
Andrew Hutchings
026fa2dd4e
Fix issues with the API documentation
2025-11-21 17:43:55 +00:00
Anthony Hu
cf8b729bae
Initialize test variables; avoid false warnings.
2025-11-21 11:59:07 -05:00
Josh Holtrop
09e223baf3
Rust wrapper: wrap wolfCrypt_Init() and wolfCrypt_Cleanup()
2025-11-21 08:48:22 -05:00
Josh Holtrop
15b55ef279
Rust wrapper: add HAVE_HASHDRBG RNG functions
2025-11-21 08:31:27 -05:00
Sean Parkinson
23c5678797
RSA decrypt: don't write past buffer end on error
...
When the decrypted data is bigger than the buffer, the one extra bytes
was being written to.
2025-11-21 12:12:14 +10:00
David Garske
59f4fa5686
Merge pull request #9452 from JacobBarthelmeh/release
...
prepare for release 5.8.4
2025-11-20 13:05:19 -08:00
JacobBarthelmeh
91f3d90f82
Update version .rc files too
2025-11-20 13:10:38 -07:00
JacobBarthelmeh
ab98c150c6
prepare for release 5.8.4
2025-11-20 10:57:50 -07:00
kaleb-himes
176801a21b
Include new header in the template file also
2025-11-20 09:40:18 -07:00
kaleb-himes
eeb2b09b23
Address linuxkm builds and the new header
2025-11-20 09:38:13 -07:00
kaleb-himes
4da42ffae9
Fix typo in header include (capital E)
2025-11-20 09:38:13 -07:00
kaleb-himes
301a4a554b
Add header to make install set
2025-11-20 09:38:13 -07:00
kaleb-himes
dc6fa0ad4e
De-couple ESV from DRBG
2025-11-20 09:38:13 -07:00
Josh Holtrop
80d3037332
Use more uppercase U's
2025-11-20 08:34:54 -05:00
Josh Holtrop
bb8673070a
Use uppercase U
2025-11-19 23:52:21 -05:00
Josh Holtrop
2c4b6f46b7
Add scripts/rsapss.test to test RSA-PSS signature algorithm negotiation
2025-11-19 23:05:31 -05:00
JacobBarthelmeh
b6adf12f83
Merge pull request #9438 from douzzer/20251113-linuxkm-aarch64-fips-tweaks
...
20251113-linuxkm-aarch64-fips-tweaks
2025-11-19 17:42:45 -07:00
Daniel Pouzzner
bea6bcbba9
Merge pull request #9450 from JacobBarthelmeh/xilinx
...
adjust test case to account for AES-GCM key size support with Xilinx …
2025-11-19 18:14:10 -06:00
Daniel Pouzzner
30487ad236
linuxkm/: fixes for ARMv7, and miscellaneous fixes for Makefile and FIPS logic.
2025-11-19 17:21:29 -06:00
Daniel Pouzzner
06d3d6d3df
linuxkm/Kbuild and linuxkm/module_hooks.c: refactor wc_linuxkm_pie_reloc_tab to include ground truth segment tag from ELF metadata.
...
tweaks for ARM32: recognize R_ARM_* relocations, and add -fno-unwind-tables to PIE_FLAGS.
linuxkm/linuxkm_wc_port.h:
* __PIE__: don't declare static pmd_to_page() unless USE_SPLIT_PMD_PTLOCKS.
* add wc_lkm_refcount_to_int() helper with -Wnested-externs suppressed.
wolfcrypt/src/fe_operations.c: in fe_frombytes() and fe_sq2(), use explicit XMEMSET()s to initialize working vars, rather than implicit, to avoid implicit (unshimmable) memset() calls.
wolfcrypt/src/ge_operations.c: fix gate on _wc_curve25519_dummy() to require CURVED25519_ASM.
2025-11-19 17:21:29 -06:00
JacobBarthelmeh
23a6edcc89
adjust test case to account for AES-GCM key size support with Xilinx afalg
2025-11-19 23:00:13 +00:00
JacobBarthelmeh
96dde5b4a8
Merge pull request #9392 from philljj/bsdkm
...
bsdkm: initial wolfcrypt FreeBSD kernel module support.
2025-11-19 15:25:21 -07:00
Anthony Hu
668602016c
Allow user to prevent wc_PKCS7_EcdsaVerify from erroring out due to extentions we do not know about
2025-11-19 14:36:04 -05:00
Josh Holtrop
268b81c29e
TLSv1.3 certificate verify: report rsa_pss_pss_* signature algorithm when supported
2025-11-19 09:47:05 -05:00
JacobBarthelmeh
8d357de6d8
Merge pull request #9444 from dgarske/macros_explicit
...
Fix issue with poorly written macros
2025-11-18 17:28:12 -07:00
David Garske
64c03fa9ee
Fix stm32.c type warnings
2025-11-18 14:33:11 -08:00
David Garske
658ea305d1
Fix issue with poorly written macros
2025-11-18 14:15:22 -08:00
JacobBarthelmeh
10c5baec1a
Merge pull request #9442 from SparkiDev/lms_192_8bit_checksum
...
LMS - check sum fix for SHA-256-192
2025-11-18 14:57:21 -07:00
sebastian-carpenter
7fdd177233
fixed oss-fuzz warnings
2025-11-18 13:28:51 -07:00
jordan
631a28fccc
bsdkm: better with-bsd-export-syms description in configure.ac.
2025-11-18 12:59:51 -06:00
jordan
0458fba394
bsdkm: add atomic_fcmpset_ptr.
2025-11-18 10:12:28 -06:00
jordan
551f90414c
bsdkm: review cleanup.
2025-11-18 09:02:45 -06:00
Sean Parkinson
da0e4f59ec
LMS - check sum fix for SHA-256-192
...
Only 8 bits needed of checksum whem doing 192-bit hashes with Winternitz
of 1 (9 for 256-bit hashes).
Cleanup code around checksum.
2025-11-18 21:20:02 +10:00
jordan
28e4fe3b6c
bsdkm: initial wolfcrypt FreeBSD kernel module support.
2025-11-18 01:28:08 -06:00
Daniel Pouzzner
46a7719e2d
Merge pull request #9441 from gojimmypi/pr-arduino-examples
...
Update Arduino workflow with parameterized matrix
2025-11-17 17:58:13 -06:00
JacobBarthelmeh
8e38e3bb5e
Merge pull request #9433 from holtrop/rust-conditional-compilation
...
Rust wrapper: enable conditional compilation based on C library build options
2025-11-17 15:03:17 -07:00
JacobBarthelmeh
35374a16fe
Merge pull request #9436 from douzzer/20251114-WOLFSSL_BLIND_PRIVATE_KEY-thread-safety
...
20251114-WOLFSSL_BLIND_PRIVATE_KEY-thread-safety
2025-11-17 15:01:13 -07:00
JacobBarthelmeh
2be7482210
Merge pull request #9439 from SparkiDev/mlkem_derive_secret_fix
...
ML-KEM: derive secret fix
2025-11-17 10:29:56 -07:00
gojimmypi
d2c0901e80
Update Arduino workflow with parameterized matrix
2025-11-17 08:41:28 -08:00
Sean Parkinson
074a3dbcc1
ML-KEM: derive secret fix
...
Fixes for deriving secret for ML-KEM.
2025-11-17 10:01:19 +10:00
Kamatham Pushyanth
9bc259ae6f
Enable hardware acceleration for AES on PSoC6.
...
- Implemented AES ECB, CBC, CFB, and GCM modes with hardware acceleration.
- Ensured proper mutex locking for concurrent access to hardware resources during
- Adjusted the aes.h header to include PSoC6 specific definitions and structures.
- Updated README for PSoC6 port.
2025-11-16 00:12:09 +05:30
Daniel Pouzzner
c29abccc9f
src/internal.c: peer review: refactor wolfssl_priv_der_unblind() and wolfssl_priv_der_unblind_free() to use AllocDer() and FreeDer().
2025-11-14 18:13:44 -06:00
Daniel Pouzzner
dee0658e8a
fix races around WOLFSSL_CTX.{privateKey,privateKeyMask,altPrivateKey,altPrivateKeyMask} in WOLFSSL_BLIND_PRIVATE_KEY code paths:
...
* rename wolfssl_priv_der_unblind() to wolfssl_priv_der_blind_toggle(),
* add wolfssl_priv_der_unblind() that allocates a temp copy,
* add wolfssl_priv_der_unblind_free(),
* in wolfssl_priv_der_blind_toggle(), make mask a const arg;
restore const attribute to ctx arg to wolfSSL_CTX_get0_privatekey(), and add explanatory comment.
2025-11-14 18:13:43 -06:00
David Garske
5c421a152d
Merge pull request #9429 from JacobBarthelmeh/certs
...
renew example certificates
2025-11-14 16:02:55 -08:00
JacobBarthelmeh
a68da8d2d5
update pksc7 decode test for new ca-cert.pem size
2025-11-14 14:53:48 -07:00
JacobBarthelmeh
3f441ef1a5
update tests after certificate renewal
2025-11-14 14:45:37 -07:00
JacobBarthelmeh
6c74098be5
run renewcerts.sh, gencertbuf.pl, and create_ocsp_test_blobs.py
2025-11-14 14:45:37 -07:00
JacobBarthelmeh
d18b251f54
Merge pull request #9420 from wolfSSL/TLS13-cipher-suite-fix
...
Fix TLS 1.3 cipher suite when TLS 1.2 ciphers precede TLS 1.3 ciphers
2025-11-14 16:42:05 -05:00
David Garske
46a2234c61
Merge pull request #9425 from JacobBarthelmeh/pkcs7_stream
...
with decode enveloped data track total encrypted content size
2025-11-14 12:59:09 -08:00
JacobBarthelmeh
30baf0a2e0
Merge pull request #9435 from dgarske/hmac_zerolen
...
Improve wc_HmacUpdate to return early if input length == 0
2025-11-14 15:49:04 -05:00
Ruby Martin
59800d8bb7
additional index checks, handle when j is 0 or 1
2025-11-14 12:19:58 -07:00
David Garske
a071426bc8
Migrate wolfAsyncCrypt repo into wolfSSL proper
2025-11-14 09:43:59 -08:00
David Garske
4e1b719236
Improve wc_HmacUpdate to return early if input length == 0. Fixes QAT issue with HKDF test.
2025-11-14 09:40:56 -08:00
Eric Blankenhorn
fda674a48a
Clarify return value of wc_RsaSSL_Verify/Inline
2025-11-14 11:06:26 -06:00
jackctj117
0767cb84bf
Removed trailing white space
2025-11-14 09:03:51 -07:00
Josh Holtrop
c61ac22e89
Rust wrapper: enable conditional compilation based on C library build options
2025-11-14 10:44:25 -05:00
Josh Holtrop
dd3b9260f9
Rust wrapper: merge wolfssl-sys crate into wolfssl crate
2025-11-14 10:44:06 -05:00
philljj
50c5028c5a
Merge pull request #9432 from douzzer/20251114-atomic-default-c
...
20251114-atomic-default-c
2025-11-14 10:34:24 -05:00
Daniel Pouzzner
135bb66352
wolfssl/wolfcrypt/wc_port.h and wolfcrypt/src/wc_port.c: use stdatomic.h implementation as C default when available, as before, for proper type annotation in objects.
2025-11-14 07:54:14 -06:00
Sean Parkinson
10a60fc41b
Merge pull request #9427 from douzzer/20251113-ZD20815
...
20251113-ZD20815
2025-11-14 11:50:16 +10:00
jackctj117
5e2fd78113
Suppress unused parameter warning
2025-11-13 18:32:00 -07:00
Daniel Pouzzner
7916db78e8
wolfcrypt/src/wc_port.c and wolfssl/wolfcrypt/wc_port.h: change precedence of atomic implementations, and don't use the stdatomic.h in C++ builds (not compatible);
...
fix the name of the wolfSSL_Atomic_Ptr_CompareExchange() implementation in the _MSC_VER code path.
2025-11-13 17:28:19 -06:00
Daniel Pouzzner
c430cc75ea
src/ssl.c and wolfssl/ssl.h: fix signature on wolfSSL_CTX_get0_privatekey() -- ctx is not const;
...
wolfcrypt/src/wc_port.c and wolfssl/wolfcrypt/wc_port.h: tweak gates on atomic implementations to maximize availability within currently supported targets;
fix some whitespace.
2025-11-13 17:11:52 -06:00
Daniel Pouzzner
26ba6344f2
add wolfSSL_Atomic_Ptr_CompareExchange(); mitigate race on ctx->privateKeyPKey in wolfSSL_CTX_get0_privatekey().
2025-11-13 16:25:49 -06:00
JacobBarthelmeh
c63ca04228
convert to type int for return value
2025-11-13 12:17:04 -07:00
JacobBarthelmeh
d06221c16e
with decode enveloped data track total encrypted content size
2025-11-13 12:08:46 -07:00
jackctj117
29c2f15a8f
Add #ifdef guards to cipher suite checks
2025-11-13 10:06:07 -07:00
David Garske
6ff57b8045
Merge pull request #9419 from rlm2002/coverity
...
Uninitialized variable fix
2025-11-13 08:58:00 -08:00
David Garske
4f3586fe58
Merge pull request #9421 from SparkiDev/mlkem_to_bytes_fix
...
ML-KEM to bytes C: not reducing all values
2025-11-13 08:57:31 -08:00
David Garske
082943649b
Merge pull request #9422 from SparkiDev/ecc_sign_hash_inlen_check
...
ECC sign hash: only allow up to max digest size
2025-11-13 08:55:53 -08:00
effbiae
de0d3e610d
refactor to ExportEccTempKey, DhSetKey and others
2025-11-13 14:49:26 +11:00
Sean Parkinson
6c30186168
ECC sign hash: only allow up to max digest size
...
Validate that the hash passed in is of an appropriate length - not
greater than the maximum digest size.
2025-11-13 11:53:51 +10:00
Sean Parkinson
b272f784ec
ML-KEM to bytes C: not reducing all values
...
Call to mlkem_csubq_c was only called on first array.
Fixed to do it for all.
2025-11-13 10:42:07 +10:00
David Garske
5a8411a1ad
Merge pull request #9418 from SparkiDev/tls13_ks_dup_check_fix
...
TLS 1.3 duplicate KeyShare entry fix
2025-11-12 16:09:11 -08:00
David Garske
f53191bae2
Merge pull request #9416 from julek-wolfssl/priv-key-blinding
...
Fix errors when blinding private keys
2025-11-12 16:09:03 -08:00
jackctj117
c56ea55f89
Fix TLS 1.3 cipher suite selection when TLS 1.2 ciphers precede TLS 1.3 ciphers
2025-11-12 17:03:06 -07:00
Ruby Martin
b2336c57ce
initialize ctype variable
2025-11-12 16:48:52 -07:00
Sean Parkinson
1ec18949bc
TLS 1.3 duplicate KeyShare entry fix
...
Fix comparison to be greater than or equal in case count is incremented
after maxing out.
2025-11-13 08:23:19 +10:00
David Garske
e78752f3b2
Merge pull request #9407 from holtrop/rust-heap-devid-cleanup
...
Rust wrapper: support optional heap and dev_id parameters
2025-11-12 13:50:45 -08:00
David Garske
7cfffd5bbc
Merge pull request #9308 from kareem-wolfssl/zd20603
...
Add IPv6 support to wolfSSL_BIO_new_accept and wolfIO_TcpBind.
2025-11-12 11:09:17 -08:00
Josh Holtrop
40c471e20d
Rust wrapper: fix cmac documentation
2025-11-12 13:41:08 -05:00
David Garske
92fffa166b
Merge pull request #9413 from JacobBarthelmeh/lic
...
update to GPLv3 exception list, add Fetchmail and OpenVPN
2025-11-12 10:12:29 -08:00
David Garske
3fe534e3a2
Merge pull request #9403 from gojimmypi/pr-lms-unary-fix
...
Fix LMS C4146 unary minus warning in MSVC, new param check
2025-11-12 08:40:33 -08:00
Juliusz Sosinowicz
32911dc6b8
Add blinding to CI
2025-11-12 17:12:35 +01:00
Juliusz Sosinowicz
4b7c052ee9
test_wolfSSL_inject: don't call accept on completed handshake
2025-11-12 17:12:22 +01:00
Juliusz Sosinowicz
d1c321abdc
Don't override errors when blinding the priv key
2025-11-12 17:12:22 +01:00
Josh Holtrop
df99227dc8
Rust wrapper: use _ex APIs for heap and dev_id variants
2025-11-12 09:50:20 -05:00
gojimmypi
ca920edbd0
Fix LMS C4146 unary minus warning in MSVC, new param check
2025-11-11 19:26:52 -08:00
Kareem
fbb7ae2257
Add NULL check to wolfSSL_BIO_new_accept.
2025-11-11 16:20:09 -07:00
Kareem
3296e6a1f0
Merge remote-tracking branch 'upstream/master' into zd20603
2025-11-11 16:15:22 -07:00
David Garske
6914f08f5e
Merge pull request #9391 from holtrop/check-dup-extensions-fix
...
Check for duplicate extensions in client hello when HAVE_TLS_EXTENSIONS is not set - fix #9377
2025-11-11 14:05:14 -08:00
Josh Holtrop
798b16dcef
Address more code review feedback for PR 9391
2025-11-11 15:36:28 -05:00
Josh Holtrop
32b00fd10b
Address code review feedback for PR 9391
2025-11-11 14:06:44 -05:00
David Garske
4c273a6f3f
Merge pull request #9404 from cconlon/jniNoQuicEch
...
Fixes for "--enable-jni --enable-all" with WOLFSSL_TLS13_MIDDLEBOX_COMPAT
2025-11-11 09:42:38 -08:00
David Garske
e323fb9675
Merge pull request #9410 from SparkiDev/multi_arch_opt
...
Workflow: multiple architectures with different -O levels
2025-11-11 09:42:21 -08:00
David Garske
2db1c7a522
Merge pull request #9395 from SparkiDev/tls12_cv_sig_check
...
TLS 1.2 CertificateVerify: validate sig alg matches peer key
2025-11-11 09:18:11 -08:00
JacobBarthelmeh
4da365214a
Merge pull request #9412 from SparkiDev/regression_fixes_21
...
Regression testing fixes
2025-11-11 09:32:43 -07:00
Sean Parkinson
d84564217c
Regression testing fixes
...
Fix #ifdef protection for AES tests.
2025-11-11 21:46:04 +10:00
Sean Parkinson
702f6ce94f
Workflow: multiple architectures with different -O levels
...
Test configurations with different optimization levels: -O2, -O3, -O1,
-O0, -Os, -Ofast
2025-11-11 17:50:48 +10:00
Sean Parkinson
f54ca0d481
TLS 1.2 CertificateVerify: req sig alg to have been in CR
...
The signature algorithm specified in CertificateVerify must have been in
the CertificateRequest. Add check.
The cipher suite test cases, when client auth and RSA are built-in and
use the default client certificate and use the *-ECDSA-* cipher
suites, no longer work. The client certificate must be ECC when the
cipher suite has ECDSA. Don't run them for that build.
2025-11-11 13:20:46 +10:00
David Garske
967f520c28
Merge pull request #9408 from anhu/stateful_integ_deprecate
...
Deprecate LMS and XMSS integrations.
2025-11-10 15:17:51 -08:00
JacobBarthelmeh
0fa2274a16
Merge pull request #9406 from SparkiDev/sp_label_noinline
...
SP label noinline: function inlined even when asked not to
2025-11-10 14:52:14 -07:00
Anthony Hu
0771bc42d6
Deprecate LMS and XMSS integrations.
2025-11-10 15:13:06 -05:00
Josh Holtrop
4102f8272e
Rust wrapper: support optional heap and dev_id parameters
2025-11-10 13:53:51 -05:00
David Garske
2c47675194
Merge pull request #9333 from gojimmypi/pr-msvc-random
...
Conditional wolfcrypt-only wc_RNG_GenerateBlock for MSVC
2025-11-10 08:33:54 -08:00
Josh Holtrop
3af60ff85d
Check for duplicate extensions in client hello when HAVE_TLS_EXTENSIONS is not set - fix #9377
2025-11-10 10:06:07 -05:00
Sean Parkinson
b7ade58c52
SP label noinline: function inlined even when asked not to
...
The label L_521_mont_reduce_9_nomask is therefore appearing more than
once in the compiled code.
Adding '%=' to the end of the label ensure it has a unique number
appended to it even when inlined.
2025-11-10 20:05:41 +10:00
Daniel Pouzzner
9c1526c90d
Merge pull request #9401 from cconlon/jniPublicMp
...
Add WOLFSSL_PUBLIC_MP to --enable-jni for wolfJCE RSA KeyFactory support
2025-11-08 11:07:54 -06:00
Daniel Pouzzner
f977004dca
Merge pull request #9400 from cconlon/ocspStaplingTls13MultiMktemp
...
Use portable mktemp syntax in ocsp-stapling_tls13multi.test
2025-11-08 11:07:28 -06:00
Daniel Pouzzner
9e9a7392d4
Merge pull request #9373 from julek-wolfssl/WOLFSSL_HOSTNAME_VERIFY_ALT_NAME_ONLY
...
Add missing WOLFSSL_HOSTNAME_VERIFY_ALT_NAME_ONLY guards
2025-11-08 11:04:43 -06:00
Daniel Pouzzner
ea4311666e
Merge pull request #9367 from julek-wolfssl/wolfDTLS_accept_stateless-early-data
...
wolfDTLS_accept_stateless: Fix handling for early data
2025-11-08 11:04:19 -06:00
Daniel Pouzzner
8b3eaa0eff
Merge pull request #9370 from gojimmypi/pr-watcom-update
...
Update and pin Watcom to 2025-11-03-Build release
2025-11-08 09:31:22 -06:00
Chris Conlon
fdec53c4c9
skip test_tls13_hrr_different_cs() test when WOLFSSL_TLS13_MIDDLEBOX_COMPAT is defined
2025-11-07 17:09:30 -07:00
Chris Conlon
0cf3728ca0
update "--enable-jni --enable-all" combo to exclude QUIC and ECH, not compatible with WOLFSSL_TLS13_MIDDLEBOX_COMPAT
2025-11-07 16:50:41 -07:00
David Garske
b45217db00
Merge pull request #9402 from anhu/stsafe_doc
...
Correction about how to get interface files.
2025-11-07 13:59:45 -08:00
Anthony Hu
22ab16df97
Correction about how to get interface files.
2025-11-07 16:53:30 -05:00
Chris Conlon
88373d8cb5
add WOLFSSL_PUBLIC_MP to --enable-jni for wolfJCE RSA KeyFactory support
2025-11-07 14:14:51 -07:00
JacobBarthelmeh
4f4826ae92
Merge pull request #9385 from anhu/not_len
...
Use suites->hashSigAlgoSz when calling TLSX_SignatureAlgorithms_MapPss
2025-11-07 13:49:30 -07:00
gojimmypi
8654599e61
Conditional wolfcrypt-only wc_RNG_GenerateBlock for MSVC
2025-11-07 11:08:44 -08:00
JacobBarthelmeh
0d49df7735
update to GPLv3 exception list, add Fetchmail and OpenVPN
2025-11-07 12:06:29 -07:00
JacobBarthelmeh
4c5bc5f8fe
Merge pull request #9387 from SparkiDev/tls12_cr_order
...
TLS 1.2: client message order check
2025-11-07 10:00:39 -07:00
JacobBarthelmeh
222f6084f8
Merge pull request #9399 from douzzer/20251106-linuxkm-PIE-inline-thunks
...
20251106-linuxkm-PIE-inline-thunks
2025-11-07 08:33:53 -07:00
Sean Parkinson
58bd6a8d94
TLS 1.2 CertificateVerify: validate sig alg matches peer key
...
Don't proceed with parsing CertificateVerify message in TLS 1.2 if the
signature algorithm doesn't match the peer's key (key from client
certificate).
2025-11-07 13:26:26 +10:00
JacobBarthelmeh
a96b35c0ff
Merge pull request #9398 from toddouska/master
...
Add GPLv2 exception list to LICENSING
2025-11-06 17:19:59 -07:00
Chris Conlon
f208716b80
use portable mktemp syntax in scripts/ocsp-stapling_tls13multi.test for macOS compatibility
2025-11-06 16:54:23 -07:00
Daniel Pouzzner
53a20f4928
linuxkm/Kbuild: when ENABLED_LINUXKM_PIE, use inline thunks on all objects, not just PIE objects, to resolve false-positive "unpatched thunk" warnings on some kernels/configs. also cleans up flag setup more generally.
2025-11-06 17:37:07 -06:00
Sean Parkinson
f376c8d910
Merge pull request #9388 from lealem47/scan_build
...
Various fixes for nightly tests
2025-11-07 09:30:08 +10:00
Sean Parkinson
3416a0f70e
Merge pull request #9393 from rlm2002/zd20756
...
Integer overflow and dead code removal
2025-11-07 09:27:05 +10:00
Todd Ouska
e02de78507
Add GPLv2 exception list to LICENSING
2025-11-06 15:18:57 -08:00
Sean Parkinson
98d84eb435
Merge pull request #9396 from julek-wolfssl/fil-c-674
...
Updates the Fil-C version to 0.674
2025-11-07 08:39:38 +10:00
JacobBarthelmeh
ca51fda3bb
Merge pull request #9372 from SparkiDev/curve25519_no_lshift_neg_val
...
Curve25519: lshift of a negative value is undefined in C
2025-11-06 15:22:38 -07:00
Lealem Amedie
15ecc2e4da
Update Rowley settings to define WOLFSSL_NO_SOCK
2025-11-06 15:11:49 -07:00
Ruby Martin
ec60d88f82
remove deadcode else statement when computing kid_type
2025-11-06 15:04:37 -07:00
Ruby Martin
9b2f7a371f
remove duplicate keylen check (deadcode)
...
wrap if statement in macro guard
2025-11-06 15:04:37 -07:00
Ruby Martin
78f2e65da6
add cast to int64_t
2025-11-06 14:58:37 -07:00
Lealem Amedie
2b8f83fd8d
Fixes for getrandom detection
2025-11-06 14:16:38 -07:00
Lealem Amedie
d3de6305e8
Exit wolfcrypt test if wolfCrypt_Init fails
2025-11-06 10:24:44 -07:00
Lealem Amedie
eecf82362e
Check for getrandom declaration
2025-11-06 10:24:20 -07:00
Juliusz Sosinowicz
bd2cc5ba5c
fixup! DTLS: Introduce custom I/O callbacks API and structure
2025-11-06 18:07:18 +01:00
Juliusz Sosinowicz
c2377fd266
DTLS: Clear userSet when peer is set in EmbedReceiveFrom
...
This allows us to differentiate between the user explicitly setting a peer and wolfio setting it. When wolfio sets the peer, we want to be able to update the peer address while in stateless parsing (governed by the `newPeer` variable).
2025-11-06 17:13:45 +01:00
Juliusz Sosinowicz
975033c64f
DTLS: Introduce returnOnGoodCh option for early ClientHello processing return
2025-11-06 17:13:45 +01:00
Juliusz Sosinowicz
6e826583a3
DTLS: Add tests for custom I/O callbacks and stateless handling with wolfio
2025-11-06 17:13:45 +01:00
Juliusz Sosinowicz
0d7fe2f0a4
DTLS: Introduce custom I/O callbacks API and structure
2025-11-06 17:13:45 +01:00
Juliusz Sosinowicz
3ebc0c5f99
Update logs
2025-11-06 16:39:48 +01:00
Juliusz Sosinowicz
ed970e7cd8
Add missing WOLFSSL_HOSTNAME_VERIFY_ALT_NAME_ONLY guards
2025-11-06 16:35:11 +01:00
Juliusz Sosinowicz
0355a31192
Updates the Fil-C version to 0.674
2025-11-06 13:48:32 +01:00
Lealem Amedie
08db159c5d
Fixes for minor scan-build warnings
2025-11-05 21:27:06 -07:00
lealem47
9780137962
Merge pull request #9394 from JacobBarthelmeh/caam
...
avoid warning when building without user_settings.h and options.h
2025-11-05 17:24:19 -07:00
Sean Parkinson
3ec882cd66
Merge pull request #9380 from julek-wolfssl/ip-addr-check
...
Improve domain and IP address matching in certificate verification
2025-11-06 09:49:07 +10:00
Sean Parkinson
aba0246550
Merge pull request #9389 from holtrop/rust-wc-pbkdf2
...
Rust wrapper: add PBKDF2 and PKCS #12 PBKDF wrappers
2025-11-06 09:46:04 +10:00
Sean Parkinson
b0a7f5938c
Merge pull request #9379 from holtrop/rust-wc-ed448
...
Rust wrapper: add wolfssl::wolfcrypt::ed448 module
2025-11-06 09:38:32 +10:00
JacobBarthelmeh
8077551ba8
avoid warning when building without user_settings.h and options.h for QNX CAAM
2025-11-05 16:03:09 -07:00
Sean Parkinson
aa0b37a7e5
Merge pull request #9384 from night1rider/crypto-callback-return-fix
...
Reset Return to Success if fallback to software Copy Callbacks Sha
2025-11-06 08:50:00 +10:00
Sean Parkinson
fe69a7cf5a
Merge pull request #9390 from kaleb-himes/test-code-bug-fix
...
Addressing a bug in the test logic
2025-11-06 08:49:15 +10:00
Sean Parkinson
97e9fa09bd
Merge pull request #9330 from rizlik/dtls13_want_write_fix
...
Dtls13: Fix handshake hangs on WANT_WRITE I/O error
2025-11-06 08:31:29 +10:00
Daniel Pouzzner
3d99090bcb
Merge pull request #9374 from philljj/spelling_cleanup
...
wolfcrypt test: tiny spelling correction.
2025-11-05 13:44:44 -06:00
kaleb-himes
b379de4119
Addressing a bug in the test logic
2025-11-05 10:28:19 -07:00
philljj
d73af7ab77
Merge pull request #9383 from douzzer/20251104-linuxkm-Kbuild-EXPORT_SYMBOL
...
20251104-linuxkm-Kbuild-EXPORT_SYMBOL
2025-11-05 11:08:49 -06:00
Josh Holtrop
797194f85b
Rust wrapper: add PBKDF2 and PKCS #12 PBKDF wrappers
2025-11-05 09:25:52 -05:00
Sean Parkinson
958fa1af60
TLS 1.2: client message order check
...
Error when client receives CertificateRequest out of order: not after
Certificate and not after ServerKeyExchange if being sent.
2025-11-05 10:00:11 +10:00
Anthony Hu
6e583a01f1
Use suites->hashSigAlgoSz instead of len in call to TLSX_SignatureAlgorithms_MapPss
2025-11-04 15:36:33 -05:00
night1rider
572776e685
Reset return value to success when copy callback requests to use software function instead
2025-11-04 13:25:16 -07:00
Daniel Pouzzner
6885573d3d
linuxkm/Kbuild: add helper variable EXPORT_SYMBOL to facilitate export attribute control.
2025-11-04 14:00:58 -06:00
philljj
9fdcd2e72a
Merge pull request #9382 from douzzer/20251104-WC_MUTEX_OPS_INLINE
...
20251104-WC_MUTEX_OPS_INLINE
2025-11-04 13:00:08 -06:00
Josh Holtrop
7f0e575ed7
Rust wrapper: fix ed448 documentation issues from code review
2025-11-04 13:49:06 -05:00
Daniel Pouzzner
54dc060579
implement WC_MUTEX_OPS_INLINE and WC_RWLOCK_OPS_INLINE gates.
2025-11-04 12:01:58 -06:00
philljj
4b93e3ecf7
Merge pull request #9381 from douzzer/20251104-fixes
...
20251104-fixes
2025-11-04 11:41:23 -06:00
Juliusz Sosinowicz
f95cb4e9bf
Improve domain and IP address matching in certificate verification
...
- Distinguish between domain and IP address checks.
- Update curl action to test with httpd server
2025-11-04 18:36:29 +01:00
Daniel Pouzzner
abec842c59
wolfcrypt/src/asn.c: in wc_Ed25519PublicKeyToDer(), when old FIPS, cast "key" arg to wc_ed25519_export_public().
2025-11-04 09:38:50 -06:00
Daniel Pouzzner
656fe3da7c
linuxkm/{module_hooks.c,linuxkm_wc_port.h}: in wc_lkm_LockMutex(), when interruptible, check for signals, and add __must_check attribute.
2025-11-04 09:37:37 -06:00
Josh Holtrop
b82cccce21
Rust wrapper: add wolfssl::wolfcrypt::ed448 module
2025-11-04 08:34:46 -05:00
Daniel Pouzzner
d47108c97f
Merge pull request #9368 from holtrop/rust-wc-ed25519
...
Rust wrapper: add wolfssl::wolfcrypt::ed25519 module
2025-11-03 22:40:43 -06:00
Sean Parkinson
e4d47fb5c7
Curve25519/448: lshift of negative is undefined in C
...
Change all left shifts to be of unsigned values.
In some cases the values were negative.
Changed 128-bit variable implementation of Curve25519. (generated)
Changed Ed25519 C implementation.
Changed Curve448 C implementation. (generated)
Changed Ed448 C implementation. (generated)
2025-11-04 10:40:23 +10:00
philljj
e0eac95fc9
Merge pull request #9375 from douzzer/20251103-linuxkm-Makefile-bash-workaround
...
20251103-linuxkm-Makefile-bash-workaround
2025-11-03 18:13:45 -06:00
gojimmypi
0714c535f1
Update and pin Watcom to 2025-11-03-Build release
2025-11-03 10:42:18 -08:00
Daniel Pouzzner
a43e416f66
linuxkm/Makefile: work around bash pecularity in libwolfssl.ko recipe ( [[ -f foo ]] is true even if foo is a symbolic link).
2025-11-03 12:00:40 -06:00
jordan
720b8e117c
wolfcrypt test: tiny spelling correction.
2025-11-03 10:06:47 -06:00
philljj
9a4fa0df2c
Merge pull request #9369 from douzzer/20251027-linuxkm-aarch64-fips
...
20251027-linuxkm-aarch64-fips
2025-11-03 09:45:16 -06:00
Marco Oliverio
33be31aeea
test: dtls: add description for WANT_WRITE tests
2025-11-03 13:43:33 +01:00
Marco Oliverio
bb284247b3
test_dtls: change approach in want_write hs testing
2025-11-03 13:43:33 +01:00
Marco Oliverio
412a78261d
test_dtls: increase coverage for non-blocking I/O
2025-11-03 13:43:33 +01:00
Marco Oliverio
6855325bf8
test: memio: simulate_want_write: block client on is_client == true
2025-11-03 13:43:33 +01:00
Marco Oliverio
0127571238
dtls13: advance buffer index on error
2025-11-03 13:43:33 +01:00
Marco Oliverio
17a08b9e36
test_dtls: return WANT_WRITE in DTLSv1.3 CH parsing
2025-11-03 13:43:33 +01:00
Sean Parkinson
574067e204
Curve25519: lshift of a negative value is undefined in C
...
Change all left shifts to be of unsigned values.
In some cases the values were negative.
Added macros to make the code easier to be consistent.
2025-11-03 22:08:52 +10:00
Masaki I.
87c4646e97
[ja] update docs
2025-11-02 19:07:26 +09:00
Daniel Pouzzner
5922b5def5
Merge pull request #9363 from julek-wolfssl/refactor-zero-return
...
Improve TLS 1.3 early data handling.
2025-10-31 17:39:11 -05:00
Daniel Pouzzner
78ff20569e
linuxkm:
...
globally rename+unify:
* HAVE_LINUXKM_PIE_SUPPORT and USE_WOLFSSL_LINUXKM_PIE_REDIRECT_TABLE under gate WC_PIE_RELOC_TABLES
* WC_LKM_INDIRECT_SYM_BY_FUNC_ONLY as WC_PIE_INDIRECT_SYM_BY_FUNC_ONLY
* WC_LKM_INDIRECT_SYM_BY_DIRECT_TABLE_READ as WC_PIE_INDIRECT_SYM_BY_DIRECT_TABLE_READ
* WC_LKM_INDIRECT_SYM() as WC_PIE_INDIRECT_SYM;
linuxkm/linuxkm_wc_port.h:
* implement pointer-caching inline wolfssl_linuxkm_get_pie_redirect_table_local() for the WC_PIE_INDIRECT_SYM_BY_FUNC_ONLY path;
* for FIPS_VERSION3_GE(6,0,0), add wolfCrypt_FIPS_*_ro_sanity pointers to struct wolfssl_linuxkm_pie_redirect_table, and corresponding ad hoc prototypes;
linuxkm/Makefile and linuxkm/module_hooks.c: move wc_linuxkm_pie_reloc_tab into the wolfCrypt PIE container;
linuxkm/module_hooks.c and linuxkm/linuxkm_wc_port.h: harmonize the types of __wc_{text,rodata}_{start,end} with wolfCrypt_FIPS_{first,last,ro_start,ro_end} to allow drop-in use of the all-inclusive ELF fenceposts, activated by WC_USE_PIE_FENCEPOSTS_FOR_FIPS.
2025-10-31 16:03:51 -05:00
Josh Holtrop
7cbcd0b00d
Rust wrapper: add wolfssl::wolfcrypt::ed25519 module
2025-10-31 11:03:15 -04:00
David Garske
b6cfdcb758
Merge pull request #9366 from douzzer/20251030-linuxkm-amd64-vec-op-sunrise
...
20251030-linuxkm-amd64-vec-op-sunrise
2025-10-31 07:32:41 -07:00
David Garske
f07cd264fe
Merge pull request #9365 from douzzer/20251030-wc_linuxkm_normalize_relocation-straddle-math
...
20251030-wc_linuxkm_normalize_relocation-straddle-math
2025-10-31 07:31:50 -07:00
Daniel Pouzzner
9273c00566
Merge pull request #9364 from dgarske/silabs_ecb
...
Fixed issue with AES ECB offloading to hardware to use full size
2025-10-30 23:55:31 -05:00
Daniel Pouzzner
643cbe127d
Merge pull request #9354 from rlm2002/coverity
...
20251027 Coverity fixes
2025-10-30 23:54:18 -05:00
Daniel Pouzzner
7085421dd0
Merge pull request #9340 from julek-wolfssl/tls13-hrr-cs-change
...
Validate cipher suite after HelloRetryRequest
2025-10-30 23:46:50 -05:00
Daniel Pouzzner
299257eae9
Merge pull request #9360 from SparkiDev/aarch64_sha256_vreg_fix
...
Aarch64 ASM: missing push and pop of vector regs
2025-10-30 23:46:11 -05:00
Daniel Pouzzner
bac055dc14
Merge pull request #9357 from holtrop/rust-wc-srtp-kdf
...
Rust wrapper: add SRTP/SRTCP KDF functions to kdf module
2025-10-30 23:45:48 -05:00
Daniel Pouzzner
a2b3af095d
Merge pull request #9339 from effbiae/EcMakeKey
...
refactor to EcMakeKey
2025-10-30 23:45:22 -05:00
Daniel Pouzzner
9c031608ef
Merge pull request #9349 from effbiae/EcExportHsKey
...
refactor to EcExportHsKey
2025-10-30 23:44:58 -05:00
Daniel Pouzzner
f1f2423f3c
linuxkm/x86_vector_register_glue.c: remove static assert on kernel >= 5.4.0 -- current implementation is unaffected by the noted bugs on < 5.4.0.
2025-10-30 18:08:54 -05:00
Daniel Pouzzner
5425894127
linuxkm/module_hooks.c: in wc_linuxkm_normalize_relocation(), when the
...
relocation straddles the buffer at end, return the exact offset of the next
relocation, rather than blindly backing up sizeof reloc_buf - 1, otherwise
byte(s) in a relocation immediately preceding will be denormalized.
2025-10-30 17:38:10 -05:00
David Garske
c5ae76e40d
Fixed issue with AES ECB offloading to hardware to use full size, not
...
just block
2025-10-29 15:52:33 -07:00
Juliusz Sosinowicz
3209d264b8
Improve TLS 1.3 early data handling.
...
Introduce `clientInEarlyData` to only return when in `wolfSSL_read_early_data`. This makes sure that other API don't return `ZERO_RETURN` when not in `wolfSSL_read_early_data`. Chose `APP_DATA_READY` as it won't result in a false positive return from `wolfSSL_read_early_data`.
2025-10-29 19:04:36 +01:00
David Garske
d45678472d
Merge pull request #9361 from douzzer/20251029-NullPointerArithm-fixes
...
20251029-NullPointerArithm-fixes
2025-10-29 09:12:40 -07:00
Daniel Pouzzner
d260493642
src/internal.c: in HashOutput(), check for null output pointer;
...
examples/pem/pem.c: in main(), add missing check that ret == 0 in _DER_TO_PEM code path.
2025-10-29 10:04:24 -05:00
Juliusz Sosinowicz
7b7f9a4fe0
dtls: Check PSK ciphersuite against local list
2025-10-29 13:14:50 +01:00
Juliusz Sosinowicz
c14b1a0504
Validate cipher suite after HelloRetryRequest
...
- Add validation to ensure the cipher suite in the ServerHello matches the one specified in the HelloRetryRequest.
- test_TLSX_CA_NAMES_bad_extension: use the same ciphersuite in HRR and SH
2025-10-29 13:14:50 +01:00
David Garske
df79b1062f
Merge pull request #9359 from douzzer/20251028-fixes
...
20251028 fixes
2025-10-28 16:57:43 -07:00
Sean Parkinson
d7807d39e0
Aarch64 ASM: missing push and pop of vector regs
...
Generated code wasn't pushing and poping vector registers when they were
64-bit.
Generation code fixed and SHA-256 ASM code fixed.
2025-10-29 09:15:32 +10:00
Daniel Pouzzner
8c60b7b250
src/internal.c and tests/api.c: fix clang-analyzer-core.NullPointerArithms.
2025-10-28 16:42:14 -05:00
Daniel Pouzzner
9b90ea83eb
src/x509.c: in wolfSSL_X509_get_ext_by_OBJ() and wolfSSL_X509_load_cert_crl_file(), add local protection from null derefs (fixes -Wnull-dereferences);
...
wolfcrypt/src/chacha.c and wolfssl/wolfcrypt/chacha.h: implement USE_ARM_CHACHA_SPEEDUP gate;
wolfcrypt/src/kdf.c: in wc_SSH_KDF(), add early return if _HashInit() fails (fixes _HashFree() of uninited _hash);
wolfcrypt/src/sha256.c: initialize sha256->W in ARMASM variant of wc_InitSha256_ex(), and pass sha256->heap to XMALLOC/XFREE consistently.
2025-10-28 16:42:14 -05:00
Daniel Pouzzner
097cd576ff
linuxkm/module_hooks.c: in wc_linuxkm_GenerateSeed_IntelRD(), log when RDSEED support is missing, and add verbose logging for generation failures.
2025-10-28 16:42:14 -05:00
Ruby Martin
e546d319c1
Fix Coverity INTEGER_OVERFLOW in sp_to_unsigned_bin, avoid unsigned underflow
2025-10-28 11:12:19 -06:00
Ruby Martin
7aec2a8280
separate BAD_FUNC_ARG error from ASN_NO_PEM_HEADER
2025-10-28 10:01:10 -06:00
David Garske
1d64a4ed8f
Merge pull request #9352 from holtrop/rust-wc-cmac
...
Rust wrapper: add wolfssl::wolfcrypt::cmac module
2025-10-28 08:58:06 -07:00
David Garske
a4be322fd6
Merge pull request #9356 from SparkiDev/sp_asm_add_sub_p384_arm
...
SP ASM ARM32/Thumb2: inline asm for add and subs
2025-10-28 08:55:54 -07:00
effbiae
1c8e7885b4
refactor to EcMakeKey
2025-10-28 08:46:47 -07:00
Josh Holtrop
bc72ac375e
Rust wrapper: fix minor typo in srtcp_kdf_label example
2025-10-28 11:43:06 -04:00
Josh Holtrop
ef92114347
Rust wrapper: cmac: consume CMAC in finalize()
2025-10-28 08:41:28 -04:00
Josh Holtrop
bfa04ca5be
Rust wrapper: cmac: fix "success" typo
2025-10-28 08:32:12 -04:00
Josh Holtrop
2e281ae2c6
Rust wrapper: add SRTP/SRTCP KDF functions to kdf module
2025-10-28 07:34:11 -04:00
Sean Parkinson
50521699af
SP ASM ARM32/Thumb2: inline asm for add and subs
...
Implement add, sub, double and triple in assembly for P384.
2025-10-28 17:49:40 +10:00
effbiae
993ecad16a
refactor to EcExportHsKey
2025-10-28 16:01:39 +11:00
Daniel Pouzzner
85bfc49711
Merge pull request #9355 from SparkiDev/aes_arm_asm_fix
...
AES ARM ASM: user data loaded 1 reg at a time
2025-10-27 23:06:17 -05:00
Sean Parkinson
d883a950d2
ML-KEM SHA-3: fix r
...
Constant r wasn't being loaded into register in all assembly functions
that use it - it just got lucky most of the time.
2025-10-28 12:04:12 +10:00
Sean Parkinson
070923a373
AES ARM ASM: user data loaded 1 reg at a time
...
User key may not be aligned and need to use instructions that don't
require alignment. Change to use ldr instead of ldp or ldrd.
2025-10-28 11:03:58 +10:00
David Garske
e6af5bcd4f
Merge pull request #9353 from embhorn/gh9347
...
Build errors in memtest config and sniffer
2025-10-27 13:15:00 -07:00
JacobBarthelmeh
a1d000cede
Merge pull request #9343 from dgarske/silabs_aesdirect
...
Fixed issue with SiLibs AES Direct (required by DTLS v1.3)
2025-10-27 13:04:12 -06:00
David Garske
76abc43812
Put unused fix in correct location.
2025-10-27 10:25:31 -07:00
David Garske
c825d0b34c
Merge pull request #9345 from JacobBarthelmeh/devid
...
fix for passing devId from WOLFSSL_CTX down to hash operation
2025-10-27 08:47:51 -07:00
Eric Blankenhorn
7ef560c188
Fix build error with memtest and memorylog
2025-10-27 10:47:13 -05:00
David Garske
594a3bc963
Merge pull request #9350 from SparkiDev/split_ssl_sk
...
Stack API: Pull out implementation into separate file
2025-10-27 08:46:43 -07:00
David Garske
4669aaeaed
Merge pull request #9342 from julek-wolfssl/filc
...
Adds fil-c workflow for testing
2025-10-27 08:46:31 -07:00
David Garske
7bbe15936d
Merge pull request #9290 from effbiae/make-pre-master-secret
...
refactor to Make(Dhe)PSKPreMasterSecret
2025-10-27 08:39:17 -07:00
Eric Blankenhorn
2f2d5b37fd
Fix undeclared var use in sniffer
2025-10-27 10:33:25 -05:00
Josh Holtrop
a6cb6170b6
Rust wrapper: add wolfssl::wolfcrypt::cmac module
2025-10-27 10:41:26 -04:00
Sean Parkinson
91a526c218
fixup
2025-10-27 18:02:49 +10:00
Sean Parkinson
093cc04076
Stack API: Pull out implementation into separate file
...
General stack APIs pulled out into ssl_sk.c.
Other simple APIs also pulled out into ssl_sk.c.
wolfSSL_lh_retrieve also pulled out into ssl_sk.c.
Added tests of public APIs that weren't already tested.
2025-10-27 17:08:41 +10:00
David Garske
d54f5e7c6a
Merge pull request #9346 from douzzer/20251025-fix-clang-tidy-all-crypto-no-sha-1
...
20251025-fix-clang-tidy-all-crypto-no-sha-1
2025-10-25 08:46:31 -07:00
Daniel Pouzzner
c9cc701097
src/internal.c: suppress clang-analyzer-deadcode.DeadStores in ImportPeerECCKey() introduced by 4964a1760a.
2025-10-25 08:55:23 -05:00
JacobBarthelmeh
1a779b3f73
fix for passing devId from WOLFSSL_CTX down to hash operation
2025-10-24 16:39:25 -06:00
David Garske
7524552b1a
Merge pull request #9344 from douzzer/20251024-fixes
...
20251024-fixes
2025-10-24 14:45:44 -07:00
Daniel Pouzzner
c145b7ee81
wolfcrypt/src/aes.c: define GCM_GMULT_LEN() when WOLFSSL_ARMASM, and fix gating on wolfCrypt_FIPS_AES_sanity (always gate in for FIPS v7+);
...
wolfcrypt/src/port/af_alg/afalg_aes.c: check for null key arg;
configure.ac: rename BUILD_FIPS_CURRENT to BUILD_FIPS_V2_PLUS (no functional change), and remove unused ARMASM_DIST_SOURCES set up code added in #9332 ;
src/include.am:
* set up $(ARMASM_SHA256_C), and use it to properly include wolfcrypt/src/sha256.c alongside armasm when appropriate;
* fix gating on Curved25519 armasm (BUILD_FIPS_V6_PLUS, not BUILD_FIPS_V6);
tests/api/test_aes.c and wolfcrypt/test/test.c: gate out incompatible coverage for WOLFSSL_AFALG and WOLFSSL_KCAPI (test_wc_AesCbcEncryptDecrypt_MultiBlocks(), test_wc_AesCtrSetKey*(), test_wc_AesCtrEncrypt*(), test_wc_AesGcmEncryptDecrypt_Sizes()).
2025-10-24 15:08:56 -05:00
David Garske
d62b1068d2
Fixed issue with SiLibs AES Direct (required by DTLS v1.3). ZD 20695
2025-10-24 11:58:56 -07:00
Juliusz Sosinowicz
1ed1b83aa5
Adds fil-c workflow for testing
2025-10-24 20:14:57 +02:00
JacobBarthelmeh
a28e107722
Merge pull request #9336 from holtrop/rust-wc-kdf-prf
...
Rust wrapper: add wolfssl::wolfcrypt::kdf, wolfssl::wolfcrypt::prf
2025-10-24 09:27:56 -06:00
JacobBarthelmeh
62deeedb52
Merge pull request #9335 from cconlon/jniAesCts
...
Define HAVE_CTS for JNI build, used by JCE AES/CTS/NoPadding
2025-10-24 09:20:02 -06:00
David Garske
4282ad38ec
Merge pull request #9300 from effbiae/ImportPeerECCKey
...
refactor to ImportPeerECCKey
2025-10-24 08:17:54 -07:00
David Garske
c354202f11
Merge pull request #9341 from holtrop/rust-dh-test-fix
...
Rust wrapper: fix intermittent test_dh failure
2025-10-24 08:17:35 -07:00
Josh Holtrop
2127365559
Rust wrapper: fix intermittent test_dh failure
2025-10-24 09:05:19 -04:00
effbiae
f087b1300c
refactor to MakePSKPreMasterSecret
2025-10-24 12:03:16 +11:00
David Garske
67c2d80470
Merge pull request #9337 from douzzer/20251023-FIPS-autotools-fix
...
20251023-FIPS-autotools-fix
2025-10-23 15:44:53 -07:00
Daniel Pouzzner
6ff47a7a4c
src/include.am: fix gate flub, !BUILD_FIPS_V6 -> !BUILD_FIPS_V6_PLUS, around sp-asm files (covered earlier for FIPS).
2025-10-23 16:57:39 -05:00
Josh Holtrop
61a277c262
Rust wrapper: Use core::ptr instead of std::ptr
2025-10-23 16:30:03 -04:00
Josh Holtrop
b75be94f0d
Rust wrapper: use SHA256::DIGEST_SIZE instead of WC_SHA256_DIGEST_SIZE
2025-10-23 16:24:09 -04:00
Josh Holtrop
5b8115ed8f
Rust wrapper: add wolfssl::wolfcrypt::kdf, wolfssl::wolfcrypt::prf
2025-10-23 16:05:07 -04:00
JacobBarthelmeh
33b08ed136
Merge pull request #9328 from holtrop/rust-wc-hmac
...
Rust wrapper: add wolfssl::wolfcrypt::hmac module
2025-10-23 14:02:11 -06:00
Chris Conlon
3e85b572f3
define HAVE_CTS for --enable-jni build, used by JCE AES/CTS/NoPadding mode
2025-10-23 12:46:59 -06:00
JacobBarthelmeh
985a090adc
Merge pull request #9334 from julek-wolfssl/wolfSSL_PEM_X509_X509_CRL_X509_PKEY_read_bio-len
...
x509: make sure pem buffer will be large enough to hold pem header
2025-10-23 09:36:46 -06:00
JacobBarthelmeh
7f5d02c36b
Merge pull request #9317 from SparkiDev/benchmark_asym_cc
...
Benchmark: add cycle counts for asym ops
2025-10-23 09:31:30 -06:00
David Garske
f376512692
Merge pull request #9332 from douzzer/20251022-FIPS-armasm-autotools-fixup
...
20251022-FIPS-armasm-autotools-fixup
2025-10-23 07:45:32 -07:00
Josh Holtrop
27212312f1
Rust wrapper: Remove unnecessary double casts in hmac
2025-10-23 09:46:05 -04:00
Josh Holtrop
df4a2120c2
Rust wrapper: add wolfssl::wolfcrypt::hkdf module
2025-10-23 09:41:12 -04:00
Josh Holtrop
b801396d52
Rust wrapper: HMAC::get_hmac_size does not need mut ref
2025-10-23 09:32:37 -04:00
Juliusz Sosinowicz
36b64fb5ae
x509: make sure pem buffer will be large enough to hold pem header
...
Found with Fil-C compiler
2025-10-23 13:28:07 +02:00
Daniel Pouzzner
3bd5a30a77
.wolfssl_known_macro_extras: snip out a couple no-longer-needed extras.
2025-10-22 22:54:51 -05:00
Daniel Pouzzner
b1f2ff73ed
wolfcrypt/src/sha256.c: in wc_Sha256HashBlock(), use ByteReverseWords() rather than a series of ByteReverseWord32() to get WOLFSSL_USE_ALIGN.
2025-10-22 22:54:20 -05:00
Daniel Pouzzner
be301f93da
fixes for autotools config around armasm AES/SHA refactor in #9284 : in configure.ac, add BUILD_FIPS_V5_PLUS and BUILD_FIPS_V6_PLUS conditionals, and fix BUILD_FIPS_V6 conditional to match v6 only;
...
in src/include.am, add LEGACY_ARMASM_foo and NEW_ARMASM_foo helper variables, restore pre-PR9284 armasm clauses, and add or update several FIPS gates as needed;
add empty wolfcrypt/src/port/arm/{armv8-aes.c,armv8-sha256.c,armv8-sha512.c} to mollify autotools, and in wolfcrypt/src/include.am, restore them to EXTRA_DIST if FIPS v5 or v6.
2025-10-22 22:52:24 -05:00
Sean Parkinson
dc45a6f340
Benchmark: add cycle counts for asym ops
...
Added million of cycles per op information.
Getting cycle count for Aarch64 now too.
2025-10-23 08:43:05 +10:00
JacobBarthelmeh
4daab8a813
Merge pull request #9284 from SparkiDev/aarch64_asm_gen
...
Aarch64 asm: convert to generated
2025-10-22 11:10:27 -06:00
JacobBarthelmeh
520d9501af
Merge pull request #9322 from SparkiDev/crldist_reason_fix
...
X.509 cert: crl distribution point reasons is IMPLICIT
2025-10-22 09:33:08 -06:00
JacobBarthelmeh
d60e4ddbd1
Merge pull request #9329 from SparkiDev/regression_fixes_20
...
Regression testing fixes
2025-10-22 09:12:58 -06:00
JacobBarthelmeh
58e37067ef
Merge pull request #9315 from SparkiDev/aes_cfb_ofb_improv
...
AES: Improve CFB and OFB and add tests
2025-10-22 09:06:46 -06:00
Sean Parkinson
821dc5cb13
Regression testing fixes
...
Adding protection to tests that use RSA and ECC.
2025-10-22 18:33:44 +10:00
Sean Parkinson
8533bc803b
AES: Improve CFB and OFB and add tests
...
Improve performance of CFB and OFB.
Only have one implementation that is used by OFB encrypt and decrypt.
Update AES testing in unit.test.
Update benchmarking of CFB and OFb to include decrypt.
2025-10-22 12:19:56 +10:00
effbiae
4964a1760a
refactor to ImportPeerECCKey
2025-10-22 13:03:55 +11:00
Josh Holtrop
ce610db4e8
Rust wrapper: add wolfssl::wolfcrypt::hmac module
2025-10-21 16:59:32 -04:00
philljj
7e6c86a6c3
Merge pull request #9326 from douzzer/20251021-KDF-FIPS-gate-tweaks
...
20251021-KDF-FIPS-gate-tweaks
2025-10-21 12:49:21 -05:00
David Garske
9c3a0e3a67
Merge pull request #9324 from douzzer/20251020-coverity-WC_SAFE_foo
...
20251020-coverity-WC_SAFE_foo
2025-10-21 09:41:25 -07:00
JacobBarthelmeh
936e350c63
Merge pull request #9325 from LinuxJedi/zp-fixes
...
Fix things found with ZeroPath
2025-10-21 10:19:01 -06:00
Brett Nicholas
1134d246f7
Merge pull request #9309 from night1rider/CryptoCbCopy
...
Add crypto callback support for copy/free operations (SHA-256)
2025-10-21 09:45:18 -06:00
Daniel Pouzzner
b07bc74a71
wolfcrypt/test/test.c: skip nist_sp80056c_kdf_test() and nist_sp800108_cmac() on FIPS <7.0.0.
2025-10-21 10:38:55 -05:00
JacobBarthelmeh
818d1e37eb
Merge pull request #9321 from anhu/no_conv_ems
...
Prevent a conversion warning
2025-10-21 09:38:00 -06:00
David Garske
c1339abc05
Merge pull request #9323 from philljj/fix_coverity_onestep
...
KDF onestep: hashOutSz err check.
2025-10-21 08:23:05 -07:00
David Garske
6f9ca6cb52
Merge pull request #9294 from LinuxJedi/benchmark-ram
...
Benchmark memory tracking
2025-10-21 08:15:28 -07:00
David Garske
0eb7ad0ead
Merge pull request #9320 from holtrop/rust-wc-sha
...
Rust wrapper: add wolfssl::wolfcrypt::sha module
2025-10-21 08:15:01 -07:00
Andrew Hutchings
90e0857d2d
Validate LinuxKM I/O lengths
...
Reject negative lengths and normalize to size_t before calling kernel_sendmsg/kernel_recvmsg so the kernel transport can’t be tricked into huge or wrapped iov_len values.
2025-10-21 14:40:36 +01:00
Andrew Hutchings
259670055a
Bound buffered HTTP body size
...
Clamp per-chunk and aggregated HTTP response sizes before allocating in wolfIO_HttpProcessResponseBuf so untrusted Content-Length or chunk headers can’t overflow the arithmetic or force giant buffers.
2025-10-21 14:13:41 +01:00
Andrew Hutchings
be1428d108
Validate AF_ALG RSA inputs
...
Require the ciphertext length to match the RSA modulus before copying into the AF_ALG Xilinx stack buffer, preventing oversized inputs from overflowing the aligned scratch space.
2025-10-21 13:57:36 +01:00
Andrew Hutchings
11d2f4894e
Guard ProcessKeyShare against truncated key shares
...
Add bounds check before reading named_group so malformed TLS 1.3 key share data cannot read past the supplied buffer.
2025-10-21 13:40:00 +01:00
Andrew Hutchings
8b4f816ae7
BioReceiveInternal: allow NULL write BIO
...
Some callers, such as the OCSP request context, only supply a read BIO. Guard the write-BIO pending check so a read error or EOF does not dereference NULL.
2025-10-21 13:12:52 +01:00
Andrew Hutchings
e6ca4d15e2
MicriumReceiveFrom: tighten peer validation
...
Reject DTLS datagrams when the stored peer is missing, the address length changes, or the address bytes differ. The old check required both the length and byte comparisons to fail, letting spoofed peers through when only one mismatch occurred.
2025-10-21 13:10:04 +01:00
Sean Parkinson
9c1462a9ec
Aarch64 asm: convert to generated
...
Algorithms now generated:
SHA-256
SHA-512
ChaCha20
Poly1305
AES-ECB
AES-CBC
AES-CTR
AES-GCM + streaming
AES-XTS
AES SetKey
ARM32 asm algorithms generated now too:
SHA-256
SHA-512
ChaCha20
AES-ECB
AES-CBC
AES-CTR
AES-GCM
AES-XTS
AES SetKey
Removed use of ARM specific implementations of algorithms. (armv8-aes.c)
2025-10-21 17:03:39 +10:00
Daniel Pouzzner
ca552cc345
src/internal.c: work around false positive "C4701: potentially uninitialized local variable" in GrowOutputBuffer().
2025-10-20 23:54:15 -05:00
Daniel Pouzzner
279238ce63
wolfssl/wolfcrypt/types.h:
...
* fix WC_MIN_SINT_OF().
* add outer cast back to target type in WC_MAX_UINT_OF() and WC_MAX_SINT_OF().
* rename WC_SAFE_SUM_*_NO_WUR to WC_SAFE_SUM_*_CLIP().
* remove clipping assignments from failure paths in WC_WUR_INT() variants.
* add WC_SAFE_SUB_UNSIGNED_CLIP(), WC_SAFE_SUB_UNSIGNED(), WC_SAFE_SUB_SIGNED_CLIP(), and WC_SAFE_SUB_SIGNED().
* add Coverity-specific annotations in WC_SAFE_*() to suppress false-positive overflow warnings.
wolfcrypt/test/test.c:
* implement macro_test().
* fix stray uint32_t's in crypto_ecc_verify() and crypto_ecc_sign() arg lists.
wolfssl/wolfcrypt/ext_xmss.h: fix stray uint32_t.
2025-10-20 23:27:09 -05:00
jordan
c1032a8cb6
KDF onestep: hashOutSz err check.
2025-10-20 22:05:41 -05:00
Sean Parkinson
5adf392d56
Merge pull request #9281 from effbiae/tlsx-with-ech
...
refactor to TLSX_ChangeSNIBegin/End
2025-10-21 10:58:33 +10:00
Sean Parkinson
3f9e2e5baa
X.509 cert: crl distribution point reasons is IMPLICIT
...
The reasons field is IMPLICIT meaning that the value is directly under
the context-specific tag. That is context-specific tag is not
constructed.
2025-10-21 09:30:45 +10:00
Andrew Hutchings
00c936c29e
Only change WC_BENCH_MAX_LINE_LEN when we need to
2025-10-20 18:58:16 +01:00
night1rider
f1faefed91
Added callbacks for copy and free to SHA, 224, 384, 512, and SHA3. Also split macros for FREE and COPY Callbacks, and add configure.ac option.
2025-10-20 11:09:35 -06:00
Anthony Hu
26ba17b48e
Prevent a conversion warning
2025-10-20 12:20:59 -04:00
David Garske
d86575c766
Merge pull request #9312 from night1rider/FixCallbackRngInit
...
Refactor wc_rng_new to use wc_rng_new_ex, and to use WC_USE_DEVID as the devId if set at compile time
2025-10-20 09:19:17 -07:00
night1rider
0dca3bc24d
Setup to be opt-in for copy callback, and also added a outline for a free callback
2025-10-20 10:07:24 -06:00
night1rider
4d6418f31a
Add crypto callback support for copy operations (SHA-256)
2025-10-20 10:06:30 -06:00
David Garske
7fa53c8c71
Merge pull request #9289 from philljj/cmac_kdf
...
cmac kdf: add NIST SP 800-108, and NIST SP 800-56C two-step.
2025-10-20 08:33:30 -07:00
night1rider
bd4099d2d7
Update test.c tests to use global devId instead of INVALID_DEVID
2025-10-20 09:16:23 -06:00
night1rider
28c78b5c0c
Use global devId for RNG initialization in tests: mlkem_test, dilithium_test, xmss_test, lms_test
2025-10-20 09:16:23 -06:00
night1rider
fba8cab200
Refactor wc_rng_new to use wc_rng_new_ex, and to use WC_USE_DEVID as the devId if set at compile time
2025-10-20 09:16:23 -06:00
jordan
525c212d1c
cmac kdf: add NIST SP 800-108, and NIST SP 800-56C two-step.
2025-10-20 08:20:23 -05:00
Josh Holtrop
987bf2fe2e
Rust wrapper: fix test_ecc sig_to_rs() check
2025-10-20 09:09:53 -04:00
Josh Holtrop
714abfa1c0
Rust wrapper: add wolfssl::wolfcrypt::sha module
2025-10-20 08:44:07 -04:00
philljj
aba9ee4015
Merge pull request #9319 from douzzer/20251018-linuxkm-gdwarf-4-g1
...
20251018-linuxkm-gdwarf-4-g1
2025-10-18 14:35:46 -05:00
Daniel Pouzzner
9881c95c46
linuxkm/Kbuild: refactor RENAME_PIE_TEXT_AND_DATA_SECTIONS to automatically derive the list of all ELF sections to rename, rather than enumerating them staticly in the objcopy recipe (motivated by changes expected in kernel 6.19).
2025-10-18 12:07:35 -05:00
Daniel Pouzzner
a36dd35e59
linuxkm: rename FIPS container segments from foo.wolfcrypt to foo_wolfcrypt to avoid getting rearranged by kernel scripts/module.lds klp/kpatch clauses expected in kernel 6.19.
2025-10-18 03:23:38 -05:00
Daniel Pouzzner
2bbc3a0ae2
wolfcrypt/test/test.c: fixes for --disable-sha256, --disable-hmac, --disable-rng, and FIPS gating on RSA-PSS.
2025-10-18 02:05:55 -05:00
Daniel Pouzzner
08f5c3e8b9
configure.ac: in linuxkm setup, use -g1 explicitly unless --enable-debug, whereupon use -g3. also, add -gdwarf-4 to AM_CCASFLAGS.
2025-10-18 01:56:48 -05:00
Andrew Hutchings
d87ca70048
Fix mixed declaration / code
2025-10-18 06:18:29 +01:00
Andrew Hutchings
01dc28ad31
Seperate AES alloc / dealloc phases
2025-10-18 06:13:40 +01:00
Andrew Hutchings
65bb68b6c0
Move heap/stack tracking to before init phase
...
Start tracking during the setup of the algo, so we can capture the
memory usage of the algo init functions.
2025-10-18 06:13:36 +01:00
Andrew Hutchings
036c66c777
Benchmark memory tracking
...
This adds heap and stack tracking to wolfCrypt bench so that it is
possible to see RAM usage. It also adds support for stack tracking in
microcontrollers (tested on STM32).
2025-10-18 06:09:01 +01:00
philljj
c091c8b7ba
Merge pull request #9318 from douzzer/20251017-linuxkm-signal-handling-tweaks
...
20251017-linuxkm-signal-handling-tweaks
2025-10-17 21:17:20 -05:00
Daniel Pouzzner
69f236be0a
linuxkm/linuxkm_wc_port.h: suppress -Wformat-nonliteral while including kernel headers (needed for kernel <=4.9).
2025-10-17 19:31:17 -05:00
Daniel Pouzzner
6a0be6a7f7
configure.ac: remove -g0 from, and always add -DHAVE_REPRODUCIBLE_BUILD to, reproducible-build AM_CFLAGS, and always add -gdwarf-4 to AM_CFLAGS when ENABLED_LINUXKM;
...
.github/workflows/linuxkm.yml: restore as-was, but change from oldconfig to olddefconfig.
2025-10-17 18:24:32 -05:00
Daniel Pouzzner
d2f819a2f6
linuxkm/module_hooks.c and linuxkm/lkcapi_glue.c: check retval from WC_SIG_IGNORE_BEGIN().
2025-10-17 18:23:25 -05:00
David Garske
d475985062
Merge pull request #9306 from holtrop/rust-wc-dh
...
Rust wrapper: add wolfssl::wolfcrypt::dh module
2025-10-17 15:41:58 -07:00
Daniel Pouzzner
e142a9629f
linuxkm/linuxkm_wc_port.h and linuxkm/module_hooks.c: tweak gating for verifyCore and my_kallsyms_lookup_name, and use the latter to reach verifyCore on old FIPS. also tweak the In-core integrity hash check failure." message to supply module-update-fips-hash instructions.
2025-10-17 17:12:37 -05:00
Daniel Pouzzner
354c576c96
.github/workflows/linuxkm.yml: comment out --enable-linuxkm-pie config, pending resolution of "dwarf_get_units failed" on Azure kernel 6.14 image.
2025-10-17 15:00:04 -05:00
Daniel Pouzzner
7a43732daa
linuxkm/linuxkm_wc_port.h, wolfssl/wolfcrypt/types.h, linuxkm/module_hooks.c, linuxkm/lkcapi_glue.c:
...
* add WC_SIG_IGNORE_BEGIN(), WC_SIG_IGNORE_END(), wc_linuxkm_sig_ignore_begin(), wc_linuxkm_sig_ignore_end();
* move WC_CHECK_FOR_INTR_SIGNALS() and WC_RELAX_LONG_LOOP() definitions outside the BUILDING_WOLFSSL gate;
* refactor linuxkm_lkcapi_registering_now as a wolfSSL_Atomic_Int and use it as a mutex for linuxkm_lkcapi_register() and linuxkm_lkcapi_unregister();
* add WC_SIG_IGNORE_BEGIN()...WC_SIG_IGNORE_END() wrappers around all relevant critical spans in linuxkm glue.
2025-10-17 14:58:21 -05:00
Josh Holtrop
4faa21a74a
Rust wrapper: Fix DH::FFDHE_* constant values
2025-10-17 14:46:15 -04:00
Josh Holtrop
8e7f77db76
Rust wrapper: add wolfssl::wolfcrypt::dh module
2025-10-17 14:46:15 -04:00
lealem47
5280bfb89a
Merge pull request #9297 from douzzer/20251011-more-fips-optest-tweaks
...
20251011-more-fips-optest-tweaks
2025-10-17 12:44:25 -06:00
David Garske
f492abfe9e
Merge pull request #9314 from SparkiDev/silabs_no_hash_raw
...
SHA-2: No hash raw
2025-10-17 10:19:01 -07:00
effbiae
8969e5f36a
refactor to TLSX_EchChangeSNI
2025-10-17 13:51:42 +11:00
Daniel Pouzzner
9cf08afbbb
fixes for --disable-tls.
2025-10-16 18:50:06 -05:00
Daniel Pouzzner
f508b44f0f
configure.ac: in setup for cryptonly, don't set enable_tls13=no or enable_tlsv12=no -- they're needed for crypto-layer KDFs.
2025-10-16 18:50:06 -05:00
Daniel Pouzzner
b924e9a905
linuxkm/module_hooks.c: add sanity check for compiled-in verifyCore, and fix linuxkm_op_test_1() call to use argc==3 arg list.
2025-10-16 18:50:06 -05:00
Daniel Pouzzner
5ee42402ae
wolfssl/wolfcrypt/types.h: fix whitespace around WC_SAFE_SUM_*().
2025-10-16 18:50:06 -05:00
Daniel Pouzzner
6fb547a1ae
linuxkm/module_hooks.c: purge fipsMode override (fipsEntry() takes care of this), and add explicit fipsCastStatus[] reset code.
2025-10-16 18:50:06 -05:00
Daniel Pouzzner
e8d9f91868
linuxkm/module_hooks.c and linuxkm/linuxkm_wc_port.h: finish implementation of
...
FIPS_OPTEST glue code, including /sys/module/libwolfssl/FIPS_optest_run_code
(FIPS_optest_trig_handler(), plus my_kallsyms_lookup_name() helper).
2025-10-16 18:50:05 -05:00
Daniel Pouzzner
581e86c178
wolfcrypt/test/test.c: fix error-path uninitialized access defect in ecc_test_buffers().
2025-10-16 18:50:05 -05:00
Zackery
0d588b446c
Merge pull request #9313 from douzzer/20251016-Wnull-dereference
...
20251016-Wnull-dereference
2025-10-16 17:47:23 -06:00
Sean Parkinson
d0909991fb
SHA-2: No hash raw
...
Implementation of FinalRaw for SE050 was not usable - TLS_hmac did not
produce valid results.
Removed implementations and defining WOLFSSL_NO_HASH_RAW to compile to
not require FinalRaw APIs.
2025-10-17 07:46:50 +10:00
Daniel Pouzzner
0c4feb0aa6
wolfcrypt/src/asn.c: revert earlier changes in EncodeName(), and add local S390-specific pragma to inhibit false-positive -Wnull-dereference.
2025-10-16 16:10:54 -05:00
Daniel Pouzzner
d6aa157187
fixes for OPENSSL_COEXIST covering OPENSSL_COMPATIBLE_DEFAULTS and WOLFSSL_WPAS:
...
* src/ssl.c:wolfSSL_CTX_new_ex()
* src/x509.c:wolfSSL_X509_PUBKEY_set()
2025-10-16 15:10:16 -05:00
Daniel Pouzzner
6ee660841b
fixes/workarounds for -Wnull-dereferences, some true positive, some false
...
positive:
* src/pk.c:wolfSSL_RSA_meth_new()
* tests/api.c:test_wolfSSL_PKCS7_certs()
* tests/api.c:test_wolfSSL_X509V3_EXT_get()
* wolfcrypt/src/asn.c:EncodeName()
* wolfcrypt/src/pkcs12.c:wc_i2d_PKCS12()
* wolfcrypt/src/port/af_alg/afalg_aes.c
2025-10-16 15:10:16 -05:00
David Garske
0727bae09e
Merge pull request #9310 from SparkiDev/lms_cast_16bit
...
LMS: Cast constants before shifting left
2025-10-16 12:16:05 -07:00
David Garske
a22d239bfd
Merge pull request #9301 from effbiae/set_srp_username
...
refactor wolfSSL_CTX_set_srp_username
2025-10-16 11:32:24 -07:00
David Garske
d88ab84b9f
Merge pull request #9311 from SparkiDev/regression_fixes_19
...
Regression testing
2025-10-16 10:56:27 -07:00
Daniel Pouzzner
058686b829
Merge pull request #9305 from dgarske/bench_rsapub
...
Fix for benchmark with key gen and "out" not being allocated
2025-10-16 12:23:23 -05:00
Sean Parkinson
c111c5bacc
Regression testing
...
x509.c: realloc may fail and therefore need to store result in a
temporary so the old pointer is not lost.
tls.c: free the name if it is not pushed on to the stack of peer CA
names. Failure to push can be from memory allocation failure.
aes.c: Don't compile XTS decrypt functions without HAVE_AES_DECRYPT.
Fix tests to have better pre-processor protection.
2025-10-16 12:13:32 +10:00
Sean Parkinson
36c953dd8f
LMS: Cast constants before shifting left
...
Compiling for 16-bit results in some constants type being too small for
shift amount without cast.
2025-10-16 09:24:48 +10:00
Kareem
88a55cdb71
Merge branch 'master' of https://github.com/wolfSSL/wolfssl into zd20603
2025-10-15 15:48:16 -07:00
Kareem
8d41d1ca65
Add IPv6 support to wolfSSL_BIO_new_accept and wolfIO_TcpBind.
2025-10-15 15:47:22 -07:00
lealem47
832e23a5f7
Merge pull request #9307 from douzzer/20251015-linuxkm-fixes
...
20251015-linuxkm-fixes
2025-10-15 16:26:00 -06:00
Daniel Pouzzner
3746164d60
linuxkm/linuxkm_wc_port.h: don't include wolfssl/wolfcrypt/memory.h (unneeded and out of order).
2025-10-15 17:06:31 -05:00
Zackery
790808b172
Merge pull request #9303 from dgarske/silabs_series2
...
Support for detecting SILABS ERF32 Series 2 ECDSA support for P384/P521
2025-10-15 12:46:44 -06:00
David Garske
0c4f5879d8
Fix for benchmark with key gen and "out" not being allocated because of typo between WOLFSSL_RSA_VERIFY_INLINE and WOLFSSL_RSA_VERIFY_ONLY.
...
Reproduced with: `./configure --enable-keygen CFLAGS="-DWOLFSSL_RSA_VERIFY_INLINE" --disable-examples && make && ./wolfcrypt/benchmark/benchmark -rsa`
2025-10-15 11:25:49 -07:00
Daniel Pouzzner
250e19a682
Merge pull request #9299 from dgarske/bench_rsasz
...
Fix for improper sizing on `bench_rsa_helper`
2025-10-15 11:55:48 -05:00
Eric Blankenhorn
f9b666dd8a
Merge pull request #9298 from douzzer/20251014-WC_SAFE_SUM
...
20251014-WC_SAFE_SUM
2025-10-15 11:44:04 -05:00
David Garske
53bbf7f2d7
Merge pull request #9302 from effbiae/wc_FreeRng
...
wc_FreeRng called multiple times in wolfSSL_CTX_set_srp_password
2025-10-15 08:48:17 -07:00
David Garske
91bf738025
Support for detecting SILABS ERF32 Series 2 ECDSA support for P384/P521
2025-10-15 08:33:37 -07:00
effbiae
1de2ad48bd
wc_FreeRng called multiple times in wolfSSL_CTX_set_srp_password
2025-10-15 17:43:53 +11:00
effbiae
cadea76e43
refactor wolfSSL_CTX_set_srp_username
2025-10-15 17:15:07 +11:00
Daniel Pouzzner
c771167127
add WC_ prefixes to MAX_UINT_OF() and friends, to avoid collision with wolfSentry macros.
2025-10-14 19:16:21 -05:00
Daniel Pouzzner
21a66ec36b
wolfssl/wolfcrypt/types.h: add missing static attribute to WC_WUR_INT().
2025-10-14 19:10:15 -05:00
David Garske
75097f3e09
Fix for improper sizing on bench_rsa_helper
2025-10-14 16:41:27 -07:00
Daniel Pouzzner
1602ed2f3a
wolfcrypt/src/asn.c: rearrange check for null cname in EncodeName() to fix false positive -Wnull-dereference.
...
src/internal.c: suppress -Wnull-dereference locally in ProcessPeerCertParse() to fix false positive.
2025-10-14 18:27:02 -05:00
Daniel Pouzzner
7c7040da24
src/internal.c: fix -Wnull-dereference in LoadCertByIssuer().
2025-10-14 17:38:12 -05:00
Daniel Pouzzner
204eb96d2f
src/ssl.c: fix overflow/overrun defect in wolfSSL_writev().
2025-10-14 16:29:15 -05:00
Daniel Pouzzner
014f55fe10
wolfssl/wolfcrypt/types.h: add WC_WUR_INT(), MAX_UINT_OF(), MAX_SINT_OF(), MIN_SINT_OF(), WC_SAFE_SUM_UNSIGNED(), and WC_SAFE_SUM_SIGNED().
2025-10-14 16:28:32 -05:00
David Garske
3534fad3ee
Merge pull request #9295 from rizlik/shutdown_nonblocking_fix
...
wolfSSL_shutdown: handle non-blocking I/O
2025-10-14 12:50:57 -07:00
Marco Oliverio
4280b52bff
test: increase coverage for multiple wolfSSL_shutdown test
2025-10-14 10:05:11 +02:00
Marco Oliverio
4b7a2b677b
wolfSSL_shutdown: fix non-blocking retry after WANT_WRITE.
...
1. Send buffered message in case SendAlert_ex returned WANT_WRITE.
2. If pending messages are sent successfully return SHUTDOWN_NOT_DONE as
current API behavior.
3. Propagate WANT_READ error for ProcessReply if waiting for other peer
shutdown (when invoking wolfSSL_shutdown for the second time)
2025-10-14 10:05:11 +02:00
Sean Parkinson
77dcbb5603
Merge pull request #9293 from dgpighin/docstrings_update
...
Some updates to the docstrings
2025-10-14 16:14:15 +10:00
Daniel Pouzzner
b2c105d5f7
Merge pull request #9292 from embhorn/zd20626
...
Fix GCC warnings
2025-10-13 23:17:13 -05:00
Daniel Pouzzner
6fbd101f7d
Merge pull request #9153 from effbiae/wc-small-stack
...
Small stack compress -- 3000line reduction
2025-10-13 23:12:01 -05:00
David Garske
e877fa747d
Merge pull request #9185 from Pushyanth-Infineon/psoc6_sha1_sha2_sha3_support
...
Enable hardware acceleration for SHA1, SHA384 and SHA3 algorithms on PSoC6
2025-10-13 13:29:52 -07:00
Eric Blankenhorn
dd22fa3243
Fix from testing
2025-10-13 15:27:01 -05:00
Eric Blankenhorn
f3428295f6
Clarify use of static ciphers in readme files ( #9283 )
...
embhorn : Clarify use of static ciphers in readme files
2025-10-13 11:38:11 -07:00
David Garske
4f0836eb73
Merge pull request #9291 from JacobBarthelmeh/csharp
...
Fixes for Ed25519 raw key import with C# wrapper
2025-10-13 11:35:44 -07:00
David Garske
9872207702
Merge pull request #9285 from SparkiDev/sp_small_stack_macros
...
SP: macros for variables that may be allocated
2025-10-13 11:12:24 -07:00
Eric Blankenhorn
e67b85724e
Fix from testing
2025-10-13 12:57:47 -05:00
Eric Blankenhorn
bae25afa40
Fix from testing
2025-10-13 12:42:01 -05:00
Eric Blankenhorn
adc9146035
Fix from testing
2025-10-13 12:33:40 -05:00
Eric Blankenhorn
83336e3436
Fix from testing
2025-10-13 12:15:39 -05:00
Marco Oliverio
6b0e24eed2
test_memio: support WANT_WRITE simulation
2025-10-13 16:27:55 +02:00
David Garske
610d8e5366
Merge pull request #9275 from SparkiDev/xtensa_ct_x25519
...
Xtensa: mitigate potential non-CT assembly output
2025-10-13 07:13:53 -07:00
effbiae
f4b8f844b2
indent {.*;} macro args
2025-10-13 14:04:06 +11:00
Sean Parkinson
fac53abc14
SP: macros for variables that may be allocated
...
Add macros to make the code simpler around allocating from dynamic
memory when WOLFSSL_SP_SMALL_STACK is defined.
Change over to using macros where it makes sense.
2025-10-13 11:48:07 +10:00
Sean Parkinson
c161cbd9f3
Xtensa: mitigate potential non-CT assembly output
...
Compilers for Xtensa have been seen to produce non-constant time code.
Force small code size builds for X25519, Ed25519, X448 and Ed448.
2025-10-13 10:24:01 +10:00
Dario Pighin
a61d79d154
Some updates to the docstrings
2025-10-11 16:43:05 +02:00
effbiae
b5c5854064
fix for cppcheck defect in src/ssl.c
2025-10-11 11:40:30 +11:00
effbiae
6bda10abd0
define WOLFSSL_SMALL_STACK in tests and benchmark for ASYNC
2025-10-11 11:40:30 +11:00
effbiae
3921362250
WC_VAR macros
2025-10-11 11:40:30 +11:00
effbiae
75a6621c63
hand edits for small stack compress
2025-10-11 11:40:30 +11:00
effbiae
7a3db09ddd
automated small stack compress
2025-10-11 11:40:30 +11:00
Kamatham Pushyanth
b2c5eb51d8
Enable hardware acceleration for SHA algorithms on PSoC6.
...
- Introduced conditional compilation for PSoC6 crypto support across SHA1, SHA2, SHA3 implementations.
- Ensured proper mutex locking for concurrent access to hardware resources during hash operations.
- Added public key creation functionality if only private key is provided in ECDSA verify function (psoc6_ecc_verify_hash_ex).
- Updated ECC parameter size handling to fix incorrect endianness conversions in psoc6_ecc_verify_hash_ex().
- Added README for PSOC6 port.
2025-10-11 05:23:40 +05:30
Eric Blankenhorn
e47be2163a
Fix buffer warnings in x509
2025-10-10 15:33:53 -05:00
Eric Blankenhorn
f713cdb5e0
Fix evp const warning and pk buffer warning
2025-10-10 15:14:56 -05:00
JacobBarthelmeh
9debdda1fa
fix for C# wrapper Ed25519 import raw key and fix Curve25519 private key decode
2025-10-10 12:32:14 -06:00
JacobBarthelmeh
a081a033fd
add C# raw public Ed25519 key export/import test
2025-10-10 12:29:05 -06:00
David Garske
e4b7f66927
Merge pull request #9286 from holtrop/rust-wc-ecc
...
Rust wrapper: add wolfssl::wolfcrypt::ecc module
2025-10-10 10:26:47 -07:00
David Garske
8a6297d42b
Merge pull request #9267 from julek-wolfssl/dtls-stricter-ordering
...
Add message order sanity checks
2025-10-10 10:26:34 -07:00
Eric Blankenhorn
aa56c40d30
Fix / suppress GCC warnings
2025-10-10 11:56:03 -05:00
David Garske
f8c2e9c000
Merge pull request #9134 from JacobBarthelmeh/csharp
...
update mono build README instructions
2025-10-10 09:21:07 -07:00
Josh Holtrop
dbc1ecc376
Rust wrapper: remove a couple mut ptr casts
2025-10-10 11:07:19 -04:00
David Garske
d9f8e15fff
Merge pull request #9288 from mattia-moffa/20251010-python-new-oid-sum
...
Disable WOLFSSL_OLD_OID_SUM on Python builds
2025-10-10 08:05:17 -07:00
David Garske
46281a2c17
Merge pull request #9287 from douzzer/20251009-more-WOLFSSL_API_PREFIX_MAP
...
20251009-more-WOLFSSL_API_PREFIX_MAP
2025-10-10 08:05:05 -07:00
Josh Holtrop
a986b03f53
Rust wrapper: Address code review feedback for ECC
2025-10-10 06:56:46 -04:00
Juliusz Sosinowicz
42238c57b7
Improve documentation and add comments to test_memio buffer utilities
2025-10-10 11:52:47 +02:00
JacobBarthelmeh
7502cbaa3e
remove trailing white space in mono.yml
2025-10-10 00:50:46 -06:00
Mattia Moffa
490f20d8f8
Disable WOLFSSL_OLD_OID_SUM on Python builds
2025-10-10 01:25:03 +02:00
David Garske
9633248b49
Merge pull request #9276 from SparkiDev/kapi_ecc_init
...
KCAPI ECC: initialize mp_ints
2025-10-09 15:40:04 -07:00
Daniel Pouzzner
f767bd2851
.github/workflows/symbol-prefixes.yml: add PQC, --enable-acert, and --with-sys-crypto-policy to configuration;
...
wolfssl/ssl.h: make sure WOLFSSL_NO_TLS12 is defined in the TLS layer when NO_TLS.
2025-10-09 17:33:14 -05:00
Daniel Pouzzner
d1ba8eb9d0
configure.ac: don't add PQC to --enable-all-crypto -- not ready yet.
...
.github/workflows/symbol-prefixes.yml: count and report total_public_symbols, and use a better pattern to classify refs as defs.
2025-10-09 16:36:14 -05:00
Daniel Pouzzner
f1d014aecd
add .github/workflows/symbol-prefixes.yml.
...
configure.ac:
* add ML-KEM, ML-DSA, XMSS, and LMS to --enable-all-crypto when !ENABLED_FIPS.
* swap order of --enable-kyber and --enable-mlkem handler code to put mlkem first.
* add --enable-mldsa hander code.
* remove setup code that was adding -DWOLFSSL_NO_TLS12 and -DNO_OLD_TLS to
AM_CFLAGS when ENABLED_CRYPTONLY -- NO_OLD_TLS is already defined earlier for
when ENABLED_CRYPTONLY, and WOLFSSL_NO_TLS12 breaks wc_PRF_TLS(), which is
inside-the-FIPS-boundary crypto.
linuxkm/linuxkm_wc_port.h:
* adopt the WC_SANITIZE_DISABLE and WC_SANITIZE_ENABLE setup code from
settings.h (where it didn't belong).
* fix FIPS remapping of wc_InitMutex&friends to InitMutex&friends -- inhibit
when WOLFSSL_API_PREFIX_MAP.
wolfcrypt/src/ge_operations.c: add _wc_curve25519_dummy() to fix visibility of
curve25519().
wolfcrypt/src/poly1305.c: fix visibility of several unprefixed helper routines.
wolfcrypt/test/test.c: fix gating on tls12_kdf_test() and prf_test() (both
require !WOLFSSL_NO_TLS12).
wolfssl/internal.h, wolfssl/wolfio.h: add several WOLFSSL_API_PREFIX_MAPs.
wolfssl/wolfcrypt/ge_operations.h: fix visibility of several internal asm
functions.
wolfssl/wolfcrypt/settings.h: in WOLFSSL_LINUXKM setup, add gates to avoid redef
warnings for various settings, and remove the setup for
WC_SANITIZE_{DISABLE,ENABLE} (moved to linuxkm_wc_port.h as noted above).
wolfssl/wolfcrypt/wc_port.h: add WOLFSSL_API_PREFIX_MAPs for InitMutex() and
friends.
2025-10-09 15:34:08 -05:00
David Garske
f070ae1024
Merge pull request #9237 from gojimmypi/pr-max-error-sz
...
Detect if WOLFSSL_MAX_ERROR_SZ is too small
2025-10-09 13:09:51 -07:00
Josh Holtrop
883da3dd35
Rust wrapper: add wolfssl::wolfcrypt::ecc module
2025-10-09 14:58:07 -04:00
Juliusz Sosinowicz
5efdc6b7b6
Make mutual auth side check more robust
2025-10-09 20:23:56 +02:00
gojimmypi
ed506a5e4d
Detect if WOLFSSL_MAX_ERROR_SZ is too small
2025-10-09 09:48:10 -07:00
Juliusz Sosinowicz
bd9f7b5b87
Clarify return values in wolfSSL_mutual_auth documentation
2025-10-09 00:57:08 +02:00
David Garske
3f460b40bc
Merge pull request #9258 from kareem-wolfssl/zd19563_4
...
Fix potential memory leak in wolfSSL_X509_verify_cert.
2025-10-08 13:59:58 -07:00
David Garske
29e2f21fff
Merge pull request #9224 from kareem-wolfssl/zd20527
...
Fix swapped WOLFSSL_SILABS_SHA384/SHA512 defines in sha512.c.
2025-10-08 13:19:05 -07:00
David Garske
db4d2af935
Merge pull request #9257 from kareem-wolfssl/zd20595
...
Fix running tests in FIPS mode with hash DRBG disabled.
2025-10-08 12:57:46 -07:00
Kaleb Himes
38df498db0
Merge pull request #9282 from douzzer/20250926-fips-optest-tweaks
...
20250926-fips-optest-tweaks
2025-10-08 13:19:27 -06:00
Daniel Pouzzner
f4d929593f
add WOLFSSL_API_PREFIX_MAP -- when defined, exported symbols otherwise missing wc_ or wolfSSL_ prefixes are remapped with the appropriate prefix;
...
define WOLFSSL_API_PREFIX_MAP in WOLFSSL_LINUXKM setup in settings.h;
fix gates on WOLFSSL_HAVE_PRF and WOLFSSL_NO_CT_OPS setup in settings.h;
linuxkm/: add support for FIPS_OPTEST.
2025-10-08 13:15:56 -05:00
David Garske
7c64292851
Merge pull request #9277 from danielinux/pkcs11-aes-ctr
...
Added support for AES-CTR in PKCS11 driver
2025-10-08 08:32:57 -07:00
Juliusz Sosinowicz
8233d0d8a2
test_memio_move_message: add docs
2025-10-08 16:20:39 +02:00
Juliusz Sosinowicz
13f8f66281
Add docs
2025-10-08 13:43:35 +02:00
Juliusz Sosinowicz
b32c1aa15c
fixup! Add message order sanity checks
2025-10-08 13:33:09 +02:00
Juliusz Sosinowicz
10365d6082
Allow clearing group messages flag
2025-10-08 11:11:03 +02:00
Juliusz Sosinowicz
6fbbdf9324
Add message order sanity checks
...
Reorganize test_dtls tests to use TEST_DECL_GROUP
Reorganize test_tls tests to use TEST_DECL_GROUP
2025-10-08 11:11:03 +02:00
Kaleb Himes
4dbf96b7bc
Merge pull request #9280 from douzzer/20251007-linuxkm-fortify-source-sunrise
...
20251007-linuxkm-fortify-source-sunrise
2025-10-07 17:31:45 -06:00
JacobBarthelmeh
459a4be339
add SNI support by default to user_settings.h with C# wrapper
2025-10-07 16:43:30 -06:00
JacobBarthelmeh
b179f0d267
copy over library since mono CI build is having trouble finding it
2025-10-07 16:38:18 -06:00
JacobBarthelmeh
f5898d5f5d
no need to run make check with wolfSSL build, this test is checking C# wrapper tests
2025-10-07 16:31:43 -06:00
JacobBarthelmeh
33030c2862
fix for macro guard in dtls test case
2025-10-07 16:27:18 -06:00
JacobBarthelmeh
5c4801fca1
update mono build README instructions and add test case
2025-10-07 15:51:02 -06:00
David Garske
a3af514b65
Merge pull request #8927 from JacobBarthelmeh/usersettings
...
Fix for user_settings.h build with configure.ac and HAVE_CURVE25519
2025-10-07 14:41:29 -07:00
David Garske
9d72337a25
Merge pull request #9273 from holtrop/rust-wc-rsa
...
Rust wrapper: add wolfssl::wolfcrypt::rsa module
2025-10-07 14:39:11 -07:00
Kareem
b564138490
Merge remote-tracking branch 'upstream/master' into zd19563_4
2025-10-07 14:23:45 -07:00
Kareem
233e574f32
Merge remote-tracking branch 'upstream/master' into zd20595
2025-10-07 14:23:21 -07:00
Kareem
8fbc39ea6c
Merge branch 'master' into zd20527
2025-10-07 14:22:55 -07:00
Kareem
14e1d2eec3
Merge branch 'master' into zd20527
2025-10-07 14:22:08 -07:00
Kareem
931384a117
Merge branch 'master' into zd20595
2025-10-07 14:21:46 -07:00
David Garske
1d67e5551b
Merge pull request #9279 from julek-wolfssl/testsuite_test-ready
...
testsuite_test: reset `ready` in between uses
2025-10-07 13:26:59 -07:00
Josh Holtrop
4fba5f8679
Rust wrapper: add license comments to Rust source files
2025-10-07 16:02:36 -04:00
Josh Holtrop
cf9014dce5
Rust wrapper: document more directories in README.md
2025-10-07 15:59:54 -04:00
Daniel Pouzzner
e4f0acdc1d
linuxkm/linuxkm_wc_port.h: disable CONFIG_FORTIFY_SOURCE module-wide on kernels <5.18 (shim conflicts), and add WC_FORCE_LINUXKM_FORTIFY_SOURCE for future use.
2025-10-07 12:49:54 -05:00
David Garske
b75af93a05
Merge pull request #9278 from JacobBarthelmeh/pkcs7_stream
...
coverity warnings on test case, CID 549270 and 549271
2025-10-07 10:19:01 -07:00
JacobBarthelmeh
2445af9308
compile both fe_operations.c and low_mem version and rely on macro defines to choose which code gets compiled
2025-10-07 10:42:08 -06:00
Juliusz Sosinowicz
5069d977ed
testsuite_test: reset ready in between uses
...
This should fix the constant intermittent failures in GH CI.
2025-10-07 18:30:36 +02:00
David Garske
b3031d25ca
Merge pull request #9255 from SparkiDev/tls13_cookie_hash
...
TLS 1.3 Cookie Hash: use stronger hash if no SHA-256
2025-10-07 08:51:26 -07:00
JacobBarthelmeh
1237a5468f
coverity warnings on test case, CID 549270 and 549271
2025-10-07 09:35:37 -06:00
David Garske
d9b52d832c
Merge pull request #9259 from julek-wolfssl/dtls13-timeout
...
Reset DTLS 1.3 timeout
2025-10-07 07:57:17 -07:00
Daniele Lacamera
ea300985e0
Added support for AES-CTR in PKCS11 driver
2025-10-07 13:03:24 +02:00
Sean Parkinson
abfcb7122c
KCAPI ECC: initialize mp_ints
...
Was not initializing mp_ints and it is needed now.
2025-10-07 20:59:27 +10:00
Sean Parkinson
9d546acd03
Merge pull request #9200 from effbiae/build-msg-or-hash-output
...
refactor to BuildMsgOrHashOutput()
2025-10-07 08:20:20 +10:00
David Garske
92a47829fa
Merge pull request #8674 from JacobBarthelmeh/pkcs7_stream
...
Fix to advance past multiple recipients
2025-10-06 11:27:03 -07:00
Josh Holtrop
ab5d9ad1b8
Rust wrapper: add wolfssl::wolfcrypt::rsa module
2025-10-06 14:10:53 -04:00
David Garske
d4242fa026
Merge pull request #9272 from julek-wolfssl/cov-20251006
...
Handle coverity reported errors
2025-10-06 10:57:20 -07:00
JacobBarthelmeh
68eb8b70d1
Merge pull request #9271 from rizlik/cryptocb_sha512_family_fix
...
cryptocb: sha512_family: try specific digest length hashtype first
2025-10-06 11:38:57 -06:00
Daniel Pouzzner
f854795c02
Merge pull request #9263 from holtrop/rsa-const-pointers
...
RSA API: use const pointers and clean up some comments
2025-10-06 11:55:04 -05:00
JacobBarthelmeh
7128932eff
avoid attempt of key decode and free buffer if incorrect recipient found
2025-10-06 10:48:59 -06:00
David Garske
dcafe9adf2
Add STM32H5 PKA support.
2025-10-06 18:38:09 +02:00
David Garske
fe7b6f1651
Add missing TimeNowInMilliseconds for FreeRTOS
2025-10-06 18:38:09 +02:00
David Garske
c349001d94
Move the STM32 hash options into STM32_HASH. Fix for realloc. Improve docs for hcom_uart. Fix issue with detecting RTC and incorrectly setting NO_ASN_TIME.
2025-10-06 18:38:09 +02:00
David Garske
ee77094dd6
Fixes to get STM32N6 hash and GMAC working
2025-10-06 18:38:09 +02:00
Juliusz Sosinowicz
f6be6c8b6d
Add timeout assertions to DTLS test
2025-10-06 18:23:16 +02:00
Juliusz Sosinowicz
cd0d986016
Reset DTLS 1.3 timeout
2025-10-06 18:23:16 +02:00
David Garske
874633da38
Merge pull request #9270 from effbiae/sm3-free-x2
...
double free -- should be o_hash
2025-10-06 08:41:30 -07:00
Juliusz Sosinowicz
32e24e8199
Suppress Coverity deadcode warning in test_ocsp_tls_cert_cb
2025-10-06 16:26:45 +02:00
Juliusz Sosinowicz
a9ad5181e6
tls13: remove dead code in SetupOcspResp csr assignment
2025-10-06 16:21:47 +02:00
Juliusz Sosinowicz
303401b047
Refactor certificate status handling to use word32
2025-10-06 16:19:54 +02:00
Marco Oliverio
fc348da28f
fix: escape error code operands
2025-10-06 14:47:13 +02:00
Marco Oliverio
9cbc3f97e5
cryptocb: sha512_family: try specific digest length hashtype first
...
If the cryptocb provider supports specific SHA512/224 and SHA512/256
hashtype, this commit allows to:
1. avoid a copy
2. do not touch the output buffer outside of the cryptocb handler
2 might be important for cryptocb provider that needs special handling
of memory buffer (DMA, memory mapping).
2025-10-06 11:42:23 +02:00
effbiae
a53f0cd3fa
double free -- should be o_hash
2025-10-05 19:13:50 +11:00
Kaleb Himes
99c983d44f
Merge pull request #9269 from douzzer/20251002-linuxkm-fencepost-and-fortify-tweaks
...
20251002-linuxkm-fencepost-and-fortify-tweaks
2025-10-03 17:01:45 -06:00
JacobBarthelmeh
fca3028395
advance index past recipent set in non stream case too
2025-10-03 15:55:35 -06:00
Daniel Pouzzner
781c9bb990
Merge pull request #9268 from dgarske/cryptocb_only
...
Remove the `NO_WRITE_TEMP_FILES` test.c logic added in #9194
2025-10-03 16:39:59 -05:00
Daniel Pouzzner
46fd3d60f9
linuxkm/Kbuild: activate linker script with backward-compatible construct (tests good on 4.4);
...
linuxkm/linuxkm_wc_port.h: completely inhibit CONFIG_FORTIFY_SOURCE across the module when HAVE_LINUXKM_PIE_SUPPORT, for fidget-free backward compat;
linuxkm/module_hooks.c:
* add startup-time sanity check on fenceposts,
* enhance DEBUG_LINUXKM_PIE_SUPPORT with coverage for WOLFSSL_TEXT_SEGMENT_CANONICALIZER on the entire text segment,
* compute and report a hash on the stabilized text segment,
* fix wc_linuxkm_normalize_relocations() to allow span end == __wc_text_end, and
* add numerous verbose pr_err()s when DEBUG_LINUXKM_PIE_SUPPORT.
2025-10-03 15:07:56 -05:00
JacobBarthelmeh
4e92920a7f
cast variable to word32 for compare
2025-10-03 13:51:15 -06:00
JacobBarthelmeh
12cfca4060
account for no AES build and add err trace macro
2025-10-03 13:51:15 -06:00
JacobBarthelmeh
328f505702
add pkcs7 test with multiple recipients
2025-10-03 13:51:15 -06:00
JacobBarthelmeh
7a5e97e30e
adjustment for recipient index advancement
2025-10-03 13:51:15 -06:00
JacobBarthelmeh
6987304f42
Fix to advance past multiple recipients
2025-10-03 13:51:15 -06:00
David Garske
d2be867b51
Remove the NO_WRITE_TEMP_FILES test.c logic added in #9194
2025-10-03 10:40:11 -07:00
David Garske
ac23b48283
Merge pull request #9144 from julek-wolfssl/ocsp-callbacks
...
tls ocsp: support lazy cert loading with ocsp stapling
2025-10-03 09:47:55 -07:00
Juliusz Sosinowicz
f9063c406b
Enables dynamic TLS cert loading with OCSP
...
Exposes dynamic TLS certificate loading and OCSP stapling to allow applications to load certs lazily.
The server no longer needs to load the CA to staple OCSP responses.
Adds a certificate setup callback (WOLFSSL_CERT_SETUP_CB)
Adds an OCSP status callback to load OCSP responses directly
Adds `wc_NewOCSP`, `wc_FreeOCSP`, and `wc_CheckCertOcspResponse`
Don't call verify twice on the same error
Send correct alert on status response error
2025-10-03 13:08:11 +02:00
effbiae
2adae90a5d
refactor to BuildMsgOrHashOutput
2025-10-03 11:41:57 +10:00
Sean Parkinson
ea4554c941
Merge pull request #9234 from effbiae/TLSX_WriteWithEch
...
restore inner server name in TLSX_WriteWithEch
2025-10-03 09:20:40 +10:00
Sean Parkinson
d8d3a7a22d
Merge pull request #9190 from colmenero/hmacCopy-sm3-issue-9187
...
Add SM3 in wolfSSL_HmacCopy
2025-10-03 09:10:03 +10:00
Sean Parkinson
e14cc3a34e
TLS 1.3 Cookie Hash: use stronger hash if no SHA-256
...
Order of preference, based on algorithms compiled in, to use with HMAC
for TLS 1.3 cookie:
1. SHA-256
2. SHA-384
3. SHA-512
4. SM3
Make code compile and unittest pass when SHA-256 not compiled in.
Certificates used for testing require SHA-256 so handshake testing
fails.
2025-10-03 08:28:02 +10:00
Daniel Pouzzner
5804ba759a
Merge pull request #9194 from dgarske/cryptocb_only_test
...
Fixes for crypto callback only (no filesystem and keygen)
2025-10-02 16:52:31 -05:00
David Garske
5501111e77
Merge pull request #9265 from douzzer/20251002-misc-clang-tidy-and-fips-fixes
...
20251002-misc-clang-tidy-and-fips-fixes
2025-10-02 14:38:14 -07:00
Daniel Pouzzner
408e6f79f9
tests/api/test_dtls.c: add missing ExpectIntEQ() around wolfSSL_connect() in test_dtls_bogus_finished_epoch_zero();
...
wolfcrypt/test/test.c: fix gate for wc_DhGeneratePublic() test in dh_ffdhe_test() to properly exclude 5.3.0.
2025-10-02 14:38:05 -05:00
Josh Holtrop
c36c39af0a
RSA API: use const pointers and clean up some comments
2025-10-02 15:28:43 -04:00
David Garske
db6a4dfedb
Merge pull request #9238 from effbiae/X509PrintSubjAltName
...
refactor X509PrintSubjAltName
2025-10-02 11:53:22 -07:00
David Garske
6de0b93a08
Merge pull request #9262 from julek-wolfssl/ascon-h-comment
...
ascon.h: Correct the placement of the AsconAEAD API comment
2025-10-02 11:11:01 -07:00
David Garske
6430a123fd
Merge pull request #9264 from gojimmypi/pr-espressif-workflow
...
Update Espressif workflow to pin latest to ESP-IDF v5.5
2025-10-02 11:05:15 -07:00
gojimmypi
b4b9bee950
Update workflow to pin latest to ESP-IDF v5.5
2025-10-02 10:25:25 -07:00
David Garske
36ce93d409
Merge pull request #9225 from gojimmypi/pr-espidf-v6-sha-fix
...
Add fix for SHA HW on ESP-IDF v6
2025-10-02 09:50:46 -07:00
Juliusz Sosinowicz
31db2b9e08
ascon.h: Correct the placement of the AsconAEAD API comment
2025-10-02 10:22:16 +02:00
effbiae
c3c7b11cfc
refactor X509PrintSubjAltName
2025-10-02 15:36:36 +10:00
Kareem
abaf57d049
Merge branch 'master' of https://github.com/wolfSSL/wolfssl into zd20595
2025-10-01 15:53:57 -07:00
Kareem
d53beb0f9d
Merge branch 'master' of https://github.com/wolfSSL/wolfssl into zd19563_4
2025-10-01 15:53:35 -07:00
Kaleb Himes
018af47f49
Merge pull request #9260 from douzzer/20251001-wc_DhGeneratePublic-ungate
...
20251001-wc_DhGeneratePublic-ungate
2025-10-01 14:38:39 -06:00
Kareem
992dfecc11
Merge branch 'master' of https://github.com/wolfSSL/wolfssl into zd19563_4
2025-10-01 11:15:46 -07:00
Daniel Pouzzner
2ca9f66579
wolfcrypt/test/test.c: add FIPS gate around wc_DhGeneratePublic() test in dh_ffdhe_test().
2025-10-01 10:23:49 -05:00
Daniel Pouzzner
477d7fae54
remove WOLFSSL_DH_GEN_PUB, WOLFSSL_NO_DH_GEN_PUB, and WOLFSSL_DH_EXTRA gating re wc_DhGeneratePublic(), consistent with recent FIPS changes.
2025-10-01 09:38:27 -05:00
Daniel Pouzzner
56524a3169
Merge pull request #9226 from philljj/tiny_curl_config
...
curl: document tiny-curl config a bit more.
2025-09-30 20:45:15 -05:00
Daniel Pouzzner
b3a5c96c56
Merge pull request #9205 from gasbytes/issue-9188
...
Prevent replaying ClientHello messages when Finished message are epoch 0
2025-09-30 20:44:09 -05:00
Daniel Pouzzner
88075664dc
Merge pull request #9252 from bigbrett/kdf-cryptocb
...
HKDF cryptocb
2025-09-30 20:37:11 -05:00
Daniel Pouzzner
d5750ac7ca
Merge pull request #9250 from gasbytes/issue-9247
...
Added check in TLX_Parse to check if KeyShare extension is present SupportedGroups must be present too (and viceversa)
2025-09-30 20:36:50 -05:00
Daniel Pouzzner
c893191577
Merge pull request #9253 from julek-wolfssl/gh/9245
...
DTLS SRTP should also do a cookie exchange since it uses UDP
2025-09-30 20:36:27 -05:00
Daniel Pouzzner
55a19da4c6
Merge pull request #9178 from SparkiDev/ed448_no_large_code
...
Ed448: No large code option with fast code
2025-09-30 20:36:10 -05:00
Daniel Pouzzner
234ba7780a
Merge pull request #9148 from SparkiDev/ct_volatile
...
Mark variables as volatile
2025-09-30 20:35:52 -05:00
Daniel Pouzzner
b4ee8869c8
Merge pull request #9246 from julek-wolfssl/gh/9240
...
Abort connection if we are about to send the same CH
2025-09-30 20:35:32 -05:00
Daniel Pouzzner
1932c5a96d
Merge pull request #9196 from kareem-wolfssl/zd20038_3
...
Fix building and running tests and examples with coding/PEM support disabled.
2025-09-30 20:34:46 -05:00
Daniel Pouzzner
2172a4dea9
Merge pull request #9248 from holtrop/rust-wc-aes
...
Rust wrapper: Add aes module
2025-09-30 20:34:25 -05:00
Daniel Pouzzner
4a176d175a
Merge pull request #9137 from kareem-wolfssl/gh8354
...
Fix documentation typo for wc_ed25519_export_public.
2025-09-30 20:34:06 -05:00
Daniel Pouzzner
c7cd3b6c6d
Merge pull request #8543 from JacobBarthelmeh/fsl_caam
...
handle unsupported fsl algo
2025-09-30 20:33:34 -05:00
Daniel Pouzzner
42d2b81231
Merge pull request #9209 from mattia-moffa/20250910-certauth-clienthello
...
Add support for certificate_authorities extension in ClientHello
2025-09-30 20:33:16 -05:00
Daniel Pouzzner
f869daafa2
Merge pull request #9037 from night1rider/issue-9009-cmake-options
...
Updating configure/Cmake to track Apple options for resulting wolfssl.pc file that is generated
2025-09-30 20:32:52 -05:00
Kareem
0efc8118d3
Fix potential memory leak in wolfSSL_X509_verify_cert.
2025-09-30 17:39:33 -07:00
Kareem
a3a08e81a9
Fix running tests in FIPS mode with hash DRBG disabled.
2025-09-30 16:15:21 -07:00
Daniel Pouzzner
b56cafdd25
Merge pull request #8692 from kareem-wolfssl/zd19563_verify
...
Update wolfSSL_X509_verify_cert to retry all certs until a valid chain is found.
2025-09-30 16:22:41 -05:00
David Garske
50f25c5849
Merge pull request #9254 from douzzer/20250929-WOLFSSL_KERNEL_MODE
...
20250929-WOLFSSL_KERNEL_MODE
2025-09-30 09:04:13 -07:00
Sean Parkinson
4719fd5e80
Ed448: No large code option with fast code
...
Make from bytes, to bytes and mod top half use for loops when no large
code.
Make generation script generate casting changes.
2025-09-30 09:38:06 +10:00
Daniel Pouzzner
7ea66aeffe
refactor WOLFSSL_LINUXKM gates as generic WOLFSSL_KERNEL_MODE gates where appropriate:
...
rename WOLFSSL_LINUXKM_USE_SAVE_VECTOR_REGISTERS to WOLFSSL_USE_SAVE_VECTOR_REGISTERS, and wherever appropriate, replace defined(WOLFSSL_LINUXKM) with defined(WOLFSSL_USE_SAVE_VECTOR_REGISTERS).
rename WC_WANT_FLAG_DONT_USE_AESNI to WC_WANT_FLAG_DONT_USE_VECTOR_OPS.
rename lkm_printf() to wc_km_printf().
replace WOLFSSL_LINUXKM gates on kernel-incompatible includes with header-specific gates NO_STRING_H, NO_STDINT_H, NO_LIMITS_H, NO_CTYPE_H, NO_STDLIB_H
remove low level threading setup section of wolfssl/internal.h, which duplicated existing logic in wc_port.h, except for off-topic WOLFSSL_APACHE_MYNEWT TLS-layer setup, which is preserved, and a defined(__NT__) clause, which is now merged into the existing section in wc_port.h.
2025-09-29 16:59:12 -05:00
David Garske
6698cb7616
Fix for crypto callback only
2025-09-29 12:37:57 -07:00
Brett Nicholas
5121847728
add HAVE_SELFTEST protection
2025-09-29 12:00:41 -06:00
Daniel Pouzzner
1247d2b5ed
Merge pull request #9249 from lealem47/wg_enable_encoding
...
Enable base16 & 64 encoding when wolfGuard is enabled
2025-09-29 12:49:36 -05:00
Brett Nicholas
7b67dbaa31
add FIPS protection to test.c usage of wc_HKDF_ex()
2025-09-29 11:36:18 -06:00
philljj
436a06e864
Merge pull request #9251 from douzzer/20250928-linuxkm-krealloc_node_align_noprof
...
20250928-linuxkm-krealloc_node_align_noprof
2025-09-29 12:16:10 -05:00
Brett Nicholas
26ed835ca1
fix HKDF test macro protection
2025-09-29 10:52:22 -06:00
Juliusz Sosinowicz
d8fd19feb8
DTLS SRTP should also do a cookie exchange since it uses UDP
2025-09-29 18:27:36 +02:00
Brett Nicholas
3c81fffedd
Add HKDF cryptoCb and test
2025-09-29 10:16:01 -06:00
Reda Chouk
be02b1ea72
Added check in TLX_Parse to check if KeyShare extension is present
...
SupportedGroups must be present too (and viceversa).
From RFC 8446 Section 9.2.
2025-09-29 13:10:32 +02:00
Daniel Pouzzner
97c094f802
linuxkm/: accommodate API change from k[v]realloc_noprof() to k[v]realloc_node_align_noprof() expected in 6.18+ (current linux-next).
2025-09-28 11:46:17 -05:00
David Garske
eda6c184bb
Merge pull request #9219 from kareem-wolfssl/zd20538
...
Fix building with --enable-keygen --enable-rsavfy.
2025-09-26 14:08:33 -07:00
Lealem Amedie
224dbb75d0
Enable base16 & 64 encoding when wolfGuard is enabled
2025-09-26 14:49:51 -06:00
Kareem
ef989a4241
Merge remote-tracking branch 'upstream/master' into zd19563_verify
2025-09-26 11:13:28 -07:00
Kareem
d2537a883f
Always add failed certs back to cert store.
2025-09-26 11:13:19 -07:00
Kareem
b302e8edd0
Move CERT_FILETYPE definition, use it in echoserver.
2025-09-26 10:58:51 -07:00
Kareem
28aef2f4dd
Merge branch 'master' of https://github.com/wolfSSL/wolfssl into zd20038_3
2025-09-26 10:56:42 -07:00
Josh Holtrop
f336e8fc5a
Rust wrapper: Add aes module
2025-09-26 13:18:51 -04:00
Juliusz Sosinowicz
f798a585d9
Abort connection if we are about to send the same CH
2025-09-26 12:08:53 +02:00
Sean Parkinson
b982f86d2f
Merge pull request #8818 from JacobBarthelmeh/tx
...
fix for threadx warning and add compile test
2025-09-26 08:33:38 +10:00
Kareem
af9a06e9bf
Merge remote-tracking branch 'upstream/master' into zd19563_verify
2025-09-25 10:39:11 -07:00
Kareem
3a4472f5da
Merge remote-tracking branch 'upstream/master' into zd20527
2025-09-25 10:37:22 -07:00
Kareem
a3b29ed99f
Merge remote-tracking branch 'upstream/master' into zd20038_3
2025-09-25 10:32:13 -07:00
Kareem
193e5205ed
Fix documentation typo for wc_ed25519_export_public.
2025-09-25 10:31:18 -07:00
Kaleb Himes
cac309d0d8
Merge pull request #9244 from douzzer/20250924-configure-fips-and-linuxkm-and-rdseed-options
...
20250924-configure-fips-and-linuxkm-and-rdseed-options
2025-09-25 11:03:22 -06:00
JacobBarthelmeh
54a52f0482
remove sed command for -Werror and refactor threadx.yml workflow
2025-09-25 09:27:16 -06:00
JacobBarthelmeh
677eeb31e4
add netxduo compile test
2025-09-25 09:27:16 -06:00
JacobBarthelmeh
50835c14a2
fix warning of const char* passed as char*
2025-09-25 09:27:16 -06:00
JacobBarthelmeh
40b9fc35f9
handle unsupported fsl algo
2025-09-25 09:14:59 -06:00
JacobBarthelmeh
65d4e01ad6
Merge pull request #9212 from holtrop/rust-wc-random
...
Rust wrapper: add wolfssl::wolfcrypt::random module
2025-09-25 09:10:07 -06:00
Daniel Pouzzner
8516411ff2
configure.ac: add --enable-wolfguard, --enable-intelrdseed, --enable-fips=v5.2.3, and --enable-fips=v5.2.4;
...
remove obsolete/wrong linuxkm incompatible-feature tests and errors for enable_compkey/ENABLED_COMPKEY/HAVE_COMP_KEY;
tweak ENABLED_ENTROPY_MEMUSE_DEFAULT logic to check for RDRAND/RDSEED.
2025-09-24 22:39:12 -05:00
Sean Parkinson
561fead861
Merge pull request #9235 from anhu/rpi_WC_RESEED_INTERVAL
...
Fixing up a small documentation omission.
2025-09-25 10:48:37 +10:00
Daniel Pouzzner
b5a914b6c2
Merge pull request #9239 from SKlimaRA/SKlimaRA/zd20556
...
fixes zd20556.
2025-09-24 13:53:18 -05:00
Stanislav Klima
1cfafc2a52
fixes from zd20556
2025-09-24 12:03:39 +02:00
Sean Parkinson
e168714123
Merge pull request #9236 from douzzer/20250923-wc_XChaCha20Poly1305_crypt_oneshot-empty-message
...
20250923-wc_XChaCha20Poly1305_crypt_oneshot-empty-message
2025-09-24 11:59:12 +10:00
Sean Parkinson
ae760923e3
Merge pull request #9208 from effbiae/set-cert-type
...
refactor to WOLFSSL_SET_CERT_TYPE
2025-09-24 10:00:03 +10:00
Sean Parkinson
9cf91e157c
Merge pull request #9218 from gojimmypi/pr-server-sm2-cert
...
Generate server-sm2-cert.der
2025-09-24 09:47:56 +10:00
Sean Parkinson
aa87b35964
Mark variables as volatile
...
Ensures compiler optimizers don't stop code from being constant time.
2025-09-24 08:47:20 +10:00
Sean Parkinson
51a7531b6a
Merge pull request #9232 from LinuxJedi/fix-deb-builds
...
Cleanup debian build
2025-09-24 08:24:51 +10:00
Mattia Moffa
26c9908504
Use string literals in tests, fix add CA functions
2025-09-24 00:11:55 +02:00
Daniel Pouzzner
4af6eb4f2b
wolfcrypt/src/chacha20_poly1305.c: in wc_XChaCha20Poly1305_crypt_oneshot(), allow empty message.
2025-09-23 17:06:22 -05:00
Anthony Hu
93955a2ba7
Fixing up a small documentation omission.
2025-09-23 15:24:50 -04:00
Kareem
0fcfade6a0
Add missing aes NULL check to SI Labs wc_AesSetKey.
2025-09-23 10:16:47 -07:00
Kaleb Himes
7084728482
Merge pull request #9230 from douzzer/20250922-linuxkm-ignore-WOLFSSL_DH_GEN_PUB
...
20250922-linuxkm-ignore-WOLFSSL_DH_GEN_PUB
2025-09-23 10:07:03 -06:00
gojimmypi
a4d0a777bc
Generate server-sm2-cert.der
2025-09-23 08:32:21 -07:00
effbiae
a8fb94b425
restore inner server name in TLSX_WriteWithEch
2025-09-23 23:30:25 +10:00
Mattia Moffa
4535572428
Use memio in tests, fix ifdef, fix typos
2025-09-23 11:50:21 +02:00
effbiae
b20f3dac57
refactor to set_cert_type
2025-09-23 19:27:22 +10:00
Andrew Hutchings
b8df4d84e9
Cleanup debian build
...
* CFLAGS get pulled in anyway with configure options, or part of the
env, we don't need to add them
* Path handling went wrong in one specific platform test run
2025-09-23 06:39:04 +01:00
Sean Parkinson
e763dcc33b
Merge pull request #9228 from LinuxJedi/stm32-rtc
...
Fix STM32 benchmark endless loop after 1 hour
2025-09-23 12:05:52 +10:00
Sean Parkinson
e497d28ae1
Merge pull request #9223 from kareem-wolfssl/zd20543_4
...
Fix non constant compare of TLS 1.3 binder, check for negative dst_len in wc_XChaCha20Poly1305_crypt_oneshot.
2025-09-23 09:09:33 +10:00
Kareem
1c7fe06322
Also gate out wc_Sha512Final for SILabs.
2025-09-22 15:45:37 -07:00
Daniel Pouzzner
006fe05305
linuxkm/lkcapi_dh_glue.c: don't test for WOLFSSL_DH_GEN_PUB -- assume that wc_DhGeneratePublic() will be available when defined(WOLFSSL_DH_EXTRA), and fail at compile time if not.
2025-09-22 14:06:07 -05:00
night1rider
4dfa75fbfa
Updating support/wolfssl.pc.in, CMakelist.txt, and configure.ac to track missing apple options in the resulting wolfssl.pc file by adding new PC_LIBS_PRIVATE to track options
2025-09-22 12:00:33 -06:00
Reda Chouk
e3fbb24713
Fix malformed DTLS comment syntax
2025-09-22 12:59:30 +02:00
Andrew Hutchings
504c51f354
Fix STM32 benchmark endless loop after 1 hour
...
If the STM32 has an RTC, this is used to time the execution of each
benchmark item. It was only multiplying hours by 24 to get seconds, so
after one hour the amount of seconds went to less than 3600. Therefore
the benchmark thought negative time elapsed and would never end.
2025-09-21 08:19:16 +01:00
JacobBarthelmeh
4ca5c315fc
Merge pull request #9222 from douzzer/20250919-GetEcDiffieHellmanKea-clang-analyzer-deadcode.DeadStores
...
20250919-GetEcDiffieHellmanKea-clang-analyzer-deadcode.DeadStores
2025-09-19 22:01:31 -06:00
jordan
fa4312edef
curl: document tiny-curl config a bit more.
2025-09-19 15:56:51 -05:00
gojimmypi
d50593834b
Add fix for SHA HW on ESP-IDF v6
2025-09-19 12:04:46 -07:00
Kareem
f4d9c90827
Fix swapped WOLFSSL_SILABS_SHA384/SHA512 defines in sha512.c.
2025-09-19 11:45:22 -07:00
Kareem
7afcf20077
Fix non constant compare of TLS 1.3 binder, check for negative dst_len in wc_XChaCha20Poly1305_crypt_oneshot.
2025-09-19 11:39:46 -07:00
Daniel Pouzzner
4174f554be
src/internal.c: fix clang-analyzer-deadcode.DeadStores in GetEcDiffieHellmanKea().
2025-09-19 11:22:19 -05:00
Mattia Moffa
5efc4a7cd0
Fix tests
2025-09-19 16:45:15 +02:00
Josh Holtrop
821758a73c
Rust wrapper: set rpath for unit test binaries
2025-09-19 07:48:36 -04:00
Josh Holtrop
ed46357fe1
Rust wrapper: Run unit tests in github workflow
2025-09-19 07:34:37 -04:00
Kareem
23f595586d
Fix building with --enable-keygen --enable-rsavfy.
2025-09-18 16:21:08 -07:00
Sean Parkinson
b90720c6be
Merge pull request #9176 from effbiae/do-server-key-exchange
...
refactor parts of DoServerKeyExchange()
2025-09-19 08:36:07 +10:00
JacobBarthelmeh
5d9c608ed6
Merge pull request #9195 from rlm2002/zd20508
...
address undefined shift behavior and overflow
2025-09-18 15:34:32 -06:00
JacobBarthelmeh
f143dbb858
Merge pull request #9217 from douzzer/20250918-25519-low-mem-gates
...
20250918-25519-low-mem-gates
2025-09-18 14:34:13 -06:00
JacobBarthelmeh
1f33b9910c
Merge pull request #9215 from LinuxJedi/fix-ACVP_VECTOR_TESTING
...
Fix a test when using `ACVP_VECTOR_TESTING`
2025-09-18 11:47:02 -06:00
JacobBarthelmeh
beaf16b9e8
Merge pull request #9216 from philljj/log_mem_err_msg
...
ssl internal: log preMasterSecret Memory error msg.
2025-09-18 11:45:03 -06:00
Daniel Pouzzner
d15523a6df
fix gating in wolfssl/wolfcrypt/fe_operations.h -- gate out load_3() and load_4() when !(CURVE25519_SMALL || ED25519_SMALL);
...
harmonize low-mem outer gate in wolfcrypt/src/fe_operations.c with outer gate in wolfcrypt/src/fe_low_mem.c.
2025-09-18 12:27:37 -05:00
jordan
0231f33b2e
ssl internal: log preMasterSecret Memory error msg.
2025-09-18 09:26:10 -05:00
Reda Chouk
8f47b4bb08
Prevent DTLS clients from replaying ClientHello
...
messages when receiving bogus Finished messages in epoch 0 by
ensuring Finished messages are only ignored in encrypted epochs (1).
2025-09-18 14:41:12 +02:00
Andrew Hutchings
b7679dbe96
Fix a test when using ACVP_VECTOR_TESTING
...
The `ACVP_VECTOR_TESTING` blocks the clearing of the output when an auth
tag check fails. This causes a test for that scenario to fail, so don't
do that test whcn `ACVP_VECTOR_TESTING` is defined.
2025-09-18 11:37:06 +01:00
Josh Holtrop
2819e5c4cc
Rust wrapper: add wolfssl::wolfcrypt::random module
2025-09-17 17:11:47 -04:00
philljj
7a0c40ee16
Merge pull request #9210 from douzzer/20250916-linuxkm-fixes
...
20250916-linuxkm-fixes
2025-09-17 15:50:03 -05:00
JacobBarthelmeh
05bcd82adc
Merge pull request #9191 from holtrop/rust-wrapper
...
Create initial Rust wrapper structure
2025-09-17 14:20:34 -06:00
Daniel Pouzzner
66ee2c2ef3
linuxkm/Makefile and linuxkm/Kbuild:
...
* refactor .PHONY Kbuild target rename-pie-text-and-data-sections into macro RENAME_PIE_TEXT_AND_DATA_SECTIONS, and execute it conditional on module_exports.c regeneration;
* use .ONESHELL in the wrapper Makefile too, and rework the changes in bf5536d6b8 such that the recursive make is always executed, but will leave the target untouched if it was already up-to-date relative to its dependencies.
these tweaks fix the module build to restore automatic rebuild when dependencies are updated.
2025-09-17 13:10:16 -05:00
Daniel Pouzzner
7ddf263199
linuxkm/Kbuild: add support for FORCE_GLOBAL_OBJTOOL_OFF.
2025-09-17 13:10:16 -05:00
JacobBarthelmeh
72ae012ace
Merge pull request #9202 from gojimmypi/pr-apple-workflow-update
...
Remove missing workflow strategy, run only for wolfssl owner
2025-09-17 11:44:34 -06:00
JacobBarthelmeh
b8b35e25e6
Merge pull request #9204 from gojimmypi/pr-test-order
...
Change test order: random_test after SHA tests
2025-09-17 10:43:30 -06:00
JacobBarthelmeh
377d238457
Merge pull request #9207 from embhorn/zd20520
...
Check for NO_THREAD_LS before assigning THREAD_LS_T
2025-09-17 10:38:48 -06:00
JacobBarthelmeh
5b864657b7
Merge pull request #9175 from SparkiDev/sm2_cert_vfy_fix
...
SM2 TLS1.3: Fix certificate verify
2025-09-17 10:16:44 -06:00
Josh Holtrop
d2c16bacb6
Rust wrapper: add include.am to include files in distribution
2025-09-17 10:44:40 -04:00
Mattia Moffa
3bdb43eb6a
Add support for certificate_authorities extension in ClientHello
2025-09-17 15:33:05 +02:00
philljj
5cb2103feb
Merge pull request #9206 from douzzer/20250916-linuxkm-module-update-fips-hash
...
20250916-linuxkm-module-update-fips-hash
2025-09-16 19:06:06 -05:00
JacobBarthelmeh
65108beee8
Merge pull request #9201 from julek-wolfssl/debian-rules
...
Ignore `debian/rules`
2025-09-16 17:50:57 -06:00
JacobBarthelmeh
b591b52ab2
Merge pull request #9182 from douzzer/20250910-wc_ecc_export_x963-no-PRIVATE_KEY_UNLOCK
...
20250910-wc_ecc_export_x963-no-PRIVATE_KEY_UNLOCK
2025-09-16 17:15:24 -06:00
Eric Blankenhorn
600058529c
Check for NO_THREAD_LS before assigning THREAD_LS_T
2025-09-16 16:17:49 -05:00
Daniel Pouzzner
bf5536d6b8
linuxkm/Makefile:
...
* add module-update-fips-hash rule, for in-place FIPS hash update without rebuild;
* improve PIE sequence in module build rule to double-check stability of the relocation table after final rebuild;
Makefile.am: add a module-update-fips-hash passthrough target.
2025-09-16 14:38:51 -05:00
gojimmypi
152075848c
Change test order: random_test after SHA tests
2025-09-16 10:48:14 -07:00
Ruby Martin
a8fca08b7e
add edge case unit test where cost=22, block=8
2025-09-16 11:04:43 -06:00
Ruby Martin
86abe793d7
address undefined shift behavior and overflow
2025-09-16 11:03:21 -06:00
gojimmypi
01178b325e
Remove missing strategy, run only for wolfssl owner
2025-09-16 08:50:14 -07:00
Juliusz Sosinowicz
c2a3a37c1e
Ignore debian/rules
2025-09-16 16:08:01 +02:00
effbiae
7da0b54d32
refactor DoServerKeyExchange()
2025-09-16 12:02:38 +10:00
JacobBarthelmeh
d4f8c9c754
Merge pull request #9189 from julek-wolfssl/hostap-vm.yml-cache-check
...
Fix: Avoids hostap checkout on cache hit
2025-09-15 13:21:54 -06:00
Chris Conlon
aa8151dc4b
Merge pull request #9186 from miyazakh/fsp_ra6m3_up2
...
Renesas RA6M3 : Minor README update
2025-09-15 10:10:50 -06:00
Kareem
989a9da65a
Move CERT_FILETYPE definition.
2025-09-12 16:33:29 -07:00
Kareem
ec92f76dec
Fix tests when building with PEM support disabled by using DER certs/keys.
2025-09-12 16:11:07 -07:00
Kareem
a216ea170c
Add test case for --enable-coding=no.
2025-09-12 16:11:07 -07:00
Kareem
5226b1b410
Fix building with --coding=no/WOLFSSL_PEM_TO_DER undefined.
2025-09-12 16:11:07 -07:00
Josh Holtrop
167e76add4
Create initial Rust wrapper structure
...
Generate bindings to C library with bindgen
Add github CI workflow to build Rust wrapper
2025-09-12 15:49:56 -04:00
Juliusz Sosinowicz
98ac98db9a
Fix: Avoids hostap checkout on cache hit
...
This change prevents the hostap repository from being cloned
unnecessarily when the cache is hit, improving workflow efficiency.
2025-09-12 17:10:13 +02:00
Luis Colmenero
b146c4e417
Add SM3 in wolfSSL_HmacCopy
2025-09-12 16:44:40 +02:00
Hideki Miyazaki
13809256ef
minor update README
2025-09-12 17:54:49 +09:00
Sean Parkinson
dc421a0d4c
Merge pull request #9164 from dgarske/keytoder
...
Add support for enabling RSA private key to DER without keygen
2025-09-12 10:36:34 +10:00
Sean Parkinson
a17b10ef10
Merge pull request #9171 from effbiae/ss-callback
...
refactor SessionSecret_callback*
2025-09-12 08:02:51 +10:00
JacobBarthelmeh
f5a735a184
Merge pull request #9180 from dgarske/stsafe-pad
...
Fix for ST-Safe issue with ECC signature R/S needing leading zero pad
2025-09-11 14:47:49 -06:00
philljj
a7cb64fcc0
Merge pull request #9184 from douzzer/20250910-linuxkm-even-more-OBJECT_FILES_NON_STANDARD
...
20250910-linuxkm-even-more-OBJECT_FILES_NON_STANDARD
2025-09-11 15:18:52 -05:00
Daniel Pouzzner
20d7650edf
linuxkm/Kbuild: when ENABLED_LINUXKM_PIE, always set "$(WOLFCRYPT_PIE_FILES): OBJECT_FILES_NON_STANDARD := y", as before. completes reversion of 04834680d5.
2025-09-11 13:53:59 -05:00
David Garske
f0b35d18a0
Merge pull request #9174 from philljj/tiny_curl
...
curl: support --enable-curl=tiny option.
2025-09-11 10:39:56 -07:00
David Garske
3e63bc68d4
Add support for enabling RSA private key to DER without keygen. ( new macro WOLFSSL_KEY_TO_DER)
2025-09-11 10:29:31 -07:00
David Garske
c397a27897
Appease IAR compiler possible use of uninitialized variables
2025-09-11 10:27:01 -07:00
David Garske
88586a5a47
Fix for ST-Safe issue with ECC signature R/S parsing needing leading zero pad (ZD 20504)
2025-09-11 10:27:01 -07:00
philljj
472605fb54
Merge pull request #9183 from douzzer/20250911-linuxkm-dont-undefine-CONFIG_OBJTOOL
...
20250911-linuxkm-dont-undefine-CONFIG_OBJTOOL
2025-09-11 12:24:05 -05:00
Daniel Pouzzner
de50268dfd
linuxkm/Kbuild: don't undefine CONFIG_OBJTOOL (breaks FIPS hash stability on some target kernels/configs);
...
add config-based gate on "$(WOLFCRYPT_PIE_FILES): OBJECT_FILES_NON_STANDARD := y".
2025-09-11 10:24:53 -05:00
philljj
edf3c3158c
Merge pull request #9181 from douzzer/20250910-linuxkm-more-OBJECT_FILES_NON_STANDARD
...
20250910-linuxkm-more-OBJECT_FILES_NON_STANDARD
2025-09-10 22:03:10 -05:00
effbiae
2332347ca1
refactor SessionSecret_callback*
2025-09-11 11:54:40 +10:00
Daniel Pouzzner
2028d1f0f4
doc/dox_comments/header_files/ecc.h: add docs for wc_ecc_make_pub() and wc_ecc_make_pub_ex(), and update docs for wc_ecc_export_x963() and wc_ecc_export_x963_ex() to reflect that they export the public key, and add see-alsos to wc_ecc_make_pub.
2025-09-10 17:02:57 -05:00
Daniel Pouzzner
04834680d5
linuxkm/Kbuild: when ENABLED_LINUXKM_PIE, use "undefine CONFIG_OBJTOOL" to inhibit false-positive "unannotated intra-function call" due to inline retpolines;
...
linuxkm/Makefile, linuxkm/include.am, linuxkm/module_hooks.c: remove linuxkm/pie_first.c, linuxkm/pie_last.c, and references to them (replaced by fenceposts in linuxkm/wolfcrypt.lds).
2025-09-10 15:08:41 -05:00
David Garske
484f35244e
Merge pull request #9179 from wolfSSL/revert-9145-zd20038_2
...
Revert "Fix building with --coding=no/WOLFSSL_PEM_TO_DER undefined."
2025-09-10 12:33:31 -07:00
Juliusz Sosinowicz
74c7115cc1
Revert "Fix building with --coding=no/WOLFSSL_PEM_TO_DER undefined."
2025-09-10 18:07:57 +02:00
Daniel Pouzzner
e3423d0922
Merge pull request #9163 from kaleb-himes/Batch2-WinCE
...
Add the updated WinCE settings for FIPS 140-3 submission
2025-09-10 09:57:59 -05:00
Daniel Pouzzner
92d504f726
Merge pull request #9161 from LinuxJedi/enhance-debian
...
Make Debian packaging more Debian-like
2025-09-10 09:49:43 -05:00
David Garske
ce5878fb8d
Merge pull request #9162 from embhorn/zd18673
...
Fixes for INTIME RTOS
2025-09-10 07:44:19 -07:00
David Garske
71068a42a9
Merge pull request #9172 from douzzer/20250908-WOLFSSL_TEXT_SEGMENT_CANONICALIZER
...
20250908-WOLFSSL_TEXT_SEGMENT_CANONICALIZER
2025-09-10 07:44:02 -07:00
David Garske
2a1df11327
Merge pull request #9145 from kareem-wolfssl/zd20038_2
...
Fix building with --coding=no/WOLFSSL_PEM_TO_DER undefined.
2025-09-09 16:24:21 -07:00
Sean Parkinson
1dc40c5129
Merge pull request #9165 from effbiae/key-present
...
align two portions of src/internal.c prior to refactor
2025-09-10 07:44:41 +10:00
Eric Blankenhorn
2179dccb1d
Fix VS proj
2025-09-09 15:36:55 -05:00
David Garske
f1ef484076
Merge pull request #9150 from miyazakh/update_fsp_v610
...
Update Renesas FSP version on RA6M4
2025-09-09 12:26:03 -07:00
David Garske
b3aa39ddad
Merge pull request #9138 from JacobBarthelmeh/sgx
...
update for SGX CPU ID to follow atomics refactor
2025-09-09 12:18:51 -07:00
David Garske
5957afb8b5
Merge pull request #9158 from miyazakh/update_fsp_v610_ra6m3
...
Update Renesas FSP version on RA6M3 example
2025-09-09 12:18:17 -07:00
David Garske
3e3b673ea7
Merge pull request #9123 from gojimmypi/pr-espressif-certs-test
...
Exclude wolfssl certs_test.h from Espressif user_settings.h
2025-09-09 12:17:00 -07:00
Eric Blankenhorn
a3a21fac3c
Fix Makefile
2025-09-09 11:56:10 -05:00
Eric Blankenhorn
b6bb43e9bc
Fix Makefile
2025-09-09 11:39:40 -05:00
Sean Parkinson
b4f1abe0f4
SM2 TLS1.3: Fix certificate verify
...
Code to verify with SM2/SM3 was not able to be reached.
The check of hsType (which was ECC for both ECC and SM2/SM3) was
replaced with a check of peerSigAlgo for ecc_dsa_sa_algo which is
different for ECDSA and SM2/SM3.
2025-09-09 21:30:37 +10:00
Sean Parkinson
342c37d8a3
Merge pull request #9159 from kareem-wolfssl/zd20378
...
Allow the keyCertSign bit to be asserted specifically for self-signed CAs.
2025-09-09 21:01:21 +10:00
jordan
c60553da66
curl: support --enable-curl=tiny option.
2025-09-08 17:03:35 -05:00
Daniel Pouzzner
ae4b33c997
linuxkm/linuxkm_wc_port.h: when HAVE_LINUXKM_PIE_SUPPORT, map
...
WOLFSSL_TEXT_SEGMENT_CANONICALIZER() to wc_linuxkm_normalize_relocations(), and
define WOLFSSL_TEXT_SEGMENT_CANONICALIZER_BUFSIZ to 8192.
linuxkm/module_hooks.c: in wc_linuxkm_normalize_relocations(), add checks for
out-of-order offsets.
2025-09-08 16:43:34 -05:00
Eric Blankenhorn
5fd5ff89c3
Changes from customer
2025-09-08 13:20:13 -05:00
Kareem
f772aad95a
Merge branch 'master' of https://github.com/wolfSSL/wolfssl into zd20378
2025-09-08 10:16:14 -07:00
philljj
bdc1f890c8
Merge pull request #9168 from douzzer/20250905-linuxkm-pie-cst32
...
20250905-linuxkm-pie-cst32
2025-09-06 11:25:33 -05:00
Hideki Miyazaki
815f2ce9db
Update Renesas FSP version on RA6M3 example
2025-09-06 19:12:24 +09:00
Andrew Hutchings
0a4ce40eb8
Make Debian packaging more Debian-like
...
When you do `./configure`, the options are stored in the rules file.
This then means you can use the normal Debian packaging methods.
`make deb` also now uses `dpkg-buildpackage`.
2025-09-06 06:22:54 +01:00
effbiae
8e9a04c55f
align two portions of src/internal.c prior to refactor
2025-09-06 13:55:44 +10:00
gojimmypi
c22354e2f5
Exclude wolfssl certs_test.h from Espressif user_settings.h
2025-09-05 17:08:04 -07:00
Daniel Pouzzner
8a7331776a
linuxkm/Kbuild: for PIE containerization, add .rodata.cst32 to the move list.
2025-09-05 17:55:24 -05:00
kaleb-himes
7c2fc506b5
Fix trailing whitespace in new user_settings.h
2025-09-05 15:36:21 -06:00
kaleb-himes
3f7ba638dd
Add the updated WinCE settings for FIPS 140-3 submission
...
Add the missing README.md
2025-09-05 15:36:21 -06:00
Eric Blankenhorn
c1b4af2dd7
Fix parenthesis issue
2025-09-05 16:35:41 -05:00
Eric Blankenhorn
b4a82877b8
Remove *.filters file
2025-09-05 16:23:26 -05:00
Eric Blankenhorn
53ee6d3a0b
Fixes for INTIME RTOS
2025-09-05 16:23:26 -05:00
David Garske
48385884c0
Merge pull request #9167 from gojimmypi/pr-fix-watcom-setld80bit
...
Pin Watcom compiler in workflow to 2025-09-01-Build
2025-09-05 13:33:31 -07:00
gojimmypi
5c2f90968f
Pin Watcom compiler in workflow to 2025-09-01-Build
2025-09-05 12:57:58 -07:00
Kareem
8e7bcfc5c2
Merge branch 'master' of https://github.com/wolfSSL/wolfssl into zd20378
2025-09-04 10:16:53 -07:00
Kareem
562ee21d36
Add ALLOW_SELFSIGNED_INVALID_CERTSIGN to known macros.
2025-09-04 10:16:41 -07:00
David Garske
4d1fa1b012
Merge pull request #9160 from douzzer/20250903-PR8329-rework
...
20250903-PR8329-rework
2025-09-04 09:43:53 -07:00
Daniel Pouzzner
ee2e63444d
wolfcrypt/src/sha512.c: don't remap ByteReverseWords64(), remove ByteReverseWords64_1() inline asm macro, and refactor Sha512FinalRaw() and wc_Sha384FinalRaw() to write directly to the output buffer when possible.
2025-09-03 22:16:15 -05:00
Sean Parkinson
5108dcd0d6
Merge pull request #9157 from rlm2002/coverity
...
move pathLengthSet assignment
2025-09-04 08:35:16 +10:00
lealem47
e29b65d22b
Merge pull request #9140 from dgarske/sniffer_partialoverlap
...
Improve sniffer detection of partial overlap
2025-09-03 14:12:44 -06:00
Kareem
37fc63ca39
Allow the keyCertSign bit to be asserted specifically for self-signed CAs.
2025-09-03 11:43:15 -07:00
David Garske
095fd88cbe
Merge pull request #9091 from gojimmypi/pr-arduino-testing
...
Improve Arduino Examples
2025-09-03 11:09:13 -07:00
Kareem
183aa7a214
Merge branch 'master' of https://github.com/wolfSSL/wolfssl into zd20038_2
2025-09-02 16:17:18 -07:00
gojimmypi
0065d9a0dd
Improve Arduino Examples, add workflow testing
2025-09-02 11:45:28 -07:00
philljj
f33814b377
Merge pull request #9151 from douzzer/20250830-linuxkm-fix-get_drbg
...
20250830-linuxkm-fix-get_drbg
2025-09-02 11:39:25 -05:00
Ruby Martin
4d5e1d0dfe
move pathLegthSet assignment
2025-09-02 10:09:11 -06:00
David Garske
6dd626de0c
Improve detection of partial overlap (ZD 20369)
2025-09-02 07:51:30 -07:00
Daniel Pouzzner
aa96c352d4
add !WC_SKIP_INCLUDED_C_FILES gates in indirectly compiled files in linuxkm/, to avoid false positive unknownMacro reports from cppcheck-force-source.
2025-08-30 14:15:55 -05:00
Daniel Pouzzner
f8e4feb633
wolfssl/wolfcrypt/error-crypt.h: in WC_ERR_TRACE() definition, use WOLFSSL_DEBUG_PRINTF_FN(WOLFSSL_DEBUG_PRINTF_FIRST_ARGS, not WOLFSSL_DEBUG_PRINTF(, for compatibility with WOLF_NO_VARIADIC_MACROS.
2025-08-30 12:54:22 -05:00
Daniel Pouzzner
7df8ee4081
linuxkm/linuxkm_wc_port.h: add default setup for LINUXKM_LKCAPI_REGISTER_HASH_DRBG_DEFAULT, to make visibility in random.c;
...
linuxkm/lkcapi_sha_glue.c: revert f7c7ac275a (get_drbg() DISABLE_VECTOR_REGISTERS() for crypto_default_rng) -- compiler/inlining bug makes it break on at least one target, so caller needs to retain responsibility;
linuxkm/x86_vector_register_glue.c: in wc_save_vector_registers_x86(), always return WC_ACCEL_INHIBIT_E if already fpu_state & WC_FPU_INHIBITED_FLAG, for safe+correct dynamics on recursive calls.
2025-08-30 12:08:57 -05:00
Hideki Miyazaki
e2fe74502f
Add wolfSSL/Debug folder as include
...
- remove BSP_WarmStart() due to duplicate
2025-08-30 09:28:09 +09:00
Hideki Miyazaki
295a11d0f7
update Readme
2025-08-30 09:24:46 +09:00
David Garske
7ef94284cc
Merge pull request #9149 from douzzer/20250829-_mlkem_decompress_5_avx2-movzwq
...
20250829-_mlkem_decompress_5_avx2-movzwq
2025-08-29 16:23:16 -07:00
Daniel Pouzzner
8ed1ce6a8b
wolfcrypt/src/wc_mlkem_asm.S: in _mlkem_decompress_5_avx2, use movzwq, not movzxw, for portability.
2025-08-29 14:42:48 -05:00
David Garske
330d6ad5a6
Merge pull request #9083 from mgrojo/bugfix/ada-overflow-check-error-string
...
Ada: fix wrapping of `wolfSSL_ERR_error_string_n`
2025-08-29 11:28:16 -07:00
David Garske
24bbb38a9a
Merge pull request #9120 from effbiae/print-debug
...
replace (f)printf with WOLFSSL_DEBUG_PRINTF
2025-08-29 11:26:44 -07:00
David Garske
c2885cf0b9
Merge pull request #9147 from douzzer/20250828-WC_SVR_FLAG_INHIBIT-recursive
...
20250828-WC_SVR_FLAG_INHIBIT-recursive
2025-08-29 11:25:03 -07:00
mgrojo
cdbad34284
Ada: include use of WolfSSL.Get_Error in the example
2025-08-29 09:57:04 -07:00
mgrojo
a0c8efdffe
Ada: fix wrapping of wolfSSL_ERR_error_string_n
...
Use unchecked conversion instead of type conversion to mimic C style
conversion from int to unsigned long, avoiding the Ada overflow check that is raised when a negative value is converted to an unsigned type.
2025-08-29 09:57:04 -07:00
effbiae
44c403f4c7
replace (f)printf with WOLFSSL_DEBUG_PRINTF
2025-08-29 12:34:22 +10:00
Daniel Pouzzner
f7c7ac275a
linuxkm/linuxkm_wc_port.h and linuxkm/x86_vector_register_glue.c: refactor
...
wc_save_vector_registers_x86() and wc_restore_vector_registers_x86() to allow
recursive WC_SVR_FLAG_INHIBIT while already in a vector save context;
linuxkm/lkcapi_sha_glue.c: in get_drbg() and put_drbg(),
DISABLE_VECTOR_REGISTERS()...REENABLE_VECTOR_REGISTERS() if tfm ==
crypto_default_rng.
2025-08-28 11:02:45 -05:00
Sean Parkinson
0224ef3d2e
Merge pull request #9146 from rlm2002/gh9128_MEM_ZERO
...
ForceZero change for WOLFSSL_CHECK_MEM_ZERO
2025-08-28 22:37:55 +10:00
JacobBarthelmeh
9774e4959f
change sgx script to create options.h if none exists
2025-08-27 16:44:47 -06:00
JacobBarthelmeh
ccf8eebc5f
update for cpuid atomic refactor
2025-08-27 16:44:46 -06:00
Ruby Martin
8b1422a869
add configuration for WOLFSSL_MEM_CHECK_ZERO
2025-08-27 16:12:57 -06:00
Ruby Martin
11942e774c
do not abort MEM_ZERO check if TEST_ALWAYS_RUN_TO_END is defined
2025-08-27 15:04:49 -06:00
Ruby Martin
1ad8b2897a
Force zero with bufferSize instead of length. add void prototype to definitions
2025-08-27 14:56:51 -06:00
Kareem
87f99ea824
Add test case for --enable-coding=no.
2025-08-27 12:02:25 -07:00
Kareem
e25bd603ed
Fix building with --coding=no/WOLFSSL_PEM_TO_DER undefined.
2025-08-27 11:53:22 -07:00
David Garske
344f127e64
Merge pull request #9129 from effbiae/wolfSSL_read_ex
...
SSL_read_ex() ... will return 1 for success or 0 for failure
2025-08-27 07:33:29 -07:00
David Garske
dac80aad58
Merge pull request #9142 from SparkiDev/mlkem_dec5_oor_fix
...
ML-KEM/Kyber: fix out of bouds read
2025-08-27 07:05:29 -07:00
effbiae
934364b8e1
wolfSSL_read_ex returns {0,1}
2025-08-27 15:35:17 +10:00
Sean Parkinson
4ff6f5f10c
ML-KEM/Kyber: fix out of bouds read
...
Decompose 5-bit values: Don't read 15 bytes when only have 10 bytes
available.
2025-08-27 14:49:24 +10:00
David Garske
c78bb1cd42
Merge pull request #9141 from gojimmypi/espressif-latest-debug
...
Fix workflow for latest ESP-IDF for espressif examples
2025-08-26 15:48:05 -07:00
gojimmypi
797c1d00ac
Fix workflow for latest ESP-IDF for espressif examples
2025-08-26 14:38:23 -07:00
Sean Parkinson
02cba85856
Merge pull request #9135 from douzzer/20250825-linuxkm-IntelRDseed64_r-burn-buf
...
20250825-linuxkm-IntelRDseed64_r-burn-buf
2025-08-27 07:22:25 +10:00
David Garske
71581e321e
Merge pull request #9098 from julek-wolfssl/fix-test_wolfSSL_tls_export
...
Fix test_wolfSSL_tls_export
2025-08-26 12:11:49 -07:00
philljj
00860baddf
Merge pull request #9136 from douzzer/20250826-more-wc_linuxkm_normalize_relocations
...
20250826-more-wc_linuxkm_normalize_relocations
2025-08-26 14:04:14 -05:00
David Garske
1ce13fc3ee
Merge pull request #9118 from SparkiDev/api_c_split_tls13
...
api.c: pull out TLS 1.3 specific tests
2025-08-26 09:23:56 -07:00
Daniel Pouzzner
79a75d1ef2
linuxkm/module_hooks.c: in wc_linuxkm_normalize_relocations(), allow non-text
...
relocations 1 byte outside the destination segment, and when
DEBUG_LINUXKM_PIE_SUPPORT, tally the relocation counts by segment for final info
report;
linuxkm/module_hooks.c and linuxkm/linuxkm_wc_port.h: tweak gating on
wc_linuxkm_normalize_relocations() and related -- ifdef
HAVE_LINUXKM_PIE_SUPPORT, not ifdef USE_WOLFSSL_LINUXKM_PIE_REDIRECT_TABLE --
for consistency+clarity.
2025-08-26 11:07:40 -05:00
David Garske
c7d1673948
Merge pull request #9132 from anhu/dup_CKS
...
Properly detect duplicate CKS extensions.
2025-08-26 09:07:04 -07:00
Juliusz Sosinowicz
d26b2811e0
test_wolfSSL_tls_export_run: silence unused cmpSess warning
2025-08-26 16:40:17 +02:00
Juliusz Sosinowicz
5934c1eece
Fix test_wolfSSL_tls_export
...
- Add TLS_EXPORT_OPT_SZ_4 to specify previous option size
- Actually pick up failures in the tests and propagate them to the top level
- Tests v4 and v5 sessions
Fixes https://github.com/wolfSSL/wolfssl/issues/9081 and https://github.com/wolfSSL/wolfssl/pull/9082
2025-08-26 11:04:54 +02:00
Daniel Pouzzner
fa61187f2e
linuxkm/module_hooks.c: in IntelRDseed64_r(), burn buf after each use to protect against info leakage.
2025-08-25 21:59:32 -05:00
Sean Parkinson
115d4d88c0
api.c: pull out TLS 1.3 specific tests
2025-08-26 09:05:46 +10:00
philljj
7aab2f3b47
Merge pull request #9126 from douzzer/20250823-linuxkm-reloc-bikeshedding
...
20250823-linuxkm-reloc-bikeshedding
2025-08-25 16:53:36 -05:00
lealem47
1c2fb10007
Merge pull request #9124 from dgarske/sniffer_partial_overlap
...
Fix for sniffer partial segment overlap that can occur when a TCP win…
2025-08-25 15:15:48 -06:00
David Garske
6ae0ecc5f3
Merge pull request #9133 from AlexLanzano/log-fix
...
Fix value comparison typo in if statement
2025-08-25 14:09:20 -07:00
David Garske
cfee026f98
Merge pull request #9131 from embhorn/zd20429
...
Fix markdown in docs
2025-08-25 14:08:30 -07:00
JacobBarthelmeh
e0913c47ef
Merge pull request #9039 from tamasan238/for-pr-1
...
Add _new/_delete API for ML-KEM/ML-DSA
2025-08-25 14:47:07 -06:00
Kareem
623c593210
Merge branch 'master' of https://github.com/wolfSSL/wolfssl into zd19563_verify
2025-08-25 11:36:12 -07:00
Alex Lanzano
8207053636
Fix value comparison typo in if statement
2025-08-25 13:56:35 -04:00
Anthony Hu
2885df68b4
Properly detect duplicate CKS extensions.
2025-08-25 12:01:50 -04:00
Eric Blankenhorn
6ab6634efc
Fix markdown in docs
2025-08-25 09:28:08 -05:00
Sean Parkinson
ffbcd4f86c
Merge pull request #9125 from douzzer/20250819-linuxkm-fips-v5-wc_GenerateSeed_IntelRD
...
20250819-linuxkm-fips-v5-wc_GenerateSeed_IntelRD
2025-08-25 21:37:35 +10:00
Daniel Pouzzner
a67d1a84f5
configure.ac: for linuxkm with PIE, don't include enable-fpcc in enable-all-crypto (the compiler generates a weird out-of-bounds bss reference for find_hole());
...
linuxkm/Makefile: in recipe (awk script) for wc_linuxkm_pie_reloc_tab.c, report and error on unexpected relocation types;
linuxkm/module_hooks.c: in wc_linuxkm_normalize_relocations():
* fix bounds checking on the input,
* recognize references pointing at the first byte after the end of the segment,
* and mask out pad bytes when rendering the 32 bit addresses;
linuxkm/wolfcrypt.lds: add 4k alignment directives just before the segment end fenceposts, to make the fenceposts more inclusive.
2025-08-23 17:21:24 -05:00
Daniel Pouzzner
d9467db007
wolfssl/wolfcrypt/types.h: fix bugprone-macro-parentheses in definition of DISABLE_VECTOR_REGISTERS.
2025-08-22 23:43:36 -05:00
Daniel Pouzzner
e0383b496a
linuxkm/module_hooks.c: implement wc_linuxkm_GenerateSeed_IntelRD, gated on WC_LINUXKM_RDSEED_IN_GLUE_LAYER;
...
add WC_GENERATE_SEED_DEFAULT, which defaults to wc_GenerateSeed if not overridden, and replace wc_GenerateSeed with WC_GENERATE_SEED_DEFAULT in various calls to wc_SetSeed_Cb();
linuxkm/linuxkm_wc_port.h: if FIPS <v6 and RDSEED, define WC_LINUXKM_RDSEED_IN_GLUE_LAYER and define WC_GENERATE_SEED_DEFAULT wc_linuxkm_GenerateSeed_IntelRD;
wolfcrypt/test/test.c: update rng_seed_test() with gating and vectors for FIPS v5 with HAVE_AMD_RDSEED or HAVE_INTEL_RDSEED;
wolfssl/wolfcrypt/types.h: add WC_HAVE_VECTOR_SPEEDUPS helper macro, and enlarge fallthrough definition coverage for DISABLE_VECTOR_REGISTERS.
2025-08-22 21:58:00 -05:00
David Garske
8dd43077fd
Fix for sniffer partial segment overlap that can occur when a TCP window is full and a TCP retransmission occurs.
2025-08-22 14:29:18 -07:00
JacobBarthelmeh
6f567bbca2
Merge pull request #9122 from julek-wolfssl/hostap-fix-cert-update
...
Fix hostap cert update
2025-08-22 15:28:19 -06:00
JacobBarthelmeh
9575c69d3b
Merge pull request #9121 from douzzer/20250819-linuxkm-pie-normalize_relocs
...
20250819-linuxkm-pie-normalize_relocs
2025-08-22 15:11:48 -06:00
Kareem
c2eeeafdbe
Merge remote-tracking branch 'upstream/master' into zd19563_verify
2025-08-22 13:56:44 -07:00
JacobBarthelmeh
bc5b297d33
Merge pull request #9046 from kareem-wolfssl/zd20038
...
Allow setting the CA type when loading into cert manager and unloading specific CA types from the cert manager.
2025-08-22 14:43:46 -06:00
David Garske
1f579afc66
Merge pull request #9117 from SparkiDev/tls13_ks_fix
...
TLS 1.3 KeyShare: error on duplicate group
2025-08-22 12:54:54 -07:00
David Garske
0d1e9c3264
Fix whitespace issue and known macros list
2025-08-22 12:48:55 -07:00
Kareem
4a067fa1bc
Don't enforce test_wolfSSL_X509_STORE_CTX_ex12 return code as it
...
may be skipped, modifying the return code.
2025-08-22 11:29:21 -07:00
Juliusz Sosinowicz
4043dc2dd0
Fix hostap cert update
...
Update the `rsa3072-*` certs to get `suite_b_192_*` tests passing
2025-08-22 17:24:49 +02:00
Daniel Pouzzner
af4e2d127f
linuxkm/: implement wc_linuxkm_pie_reloc_tab and wc_linuxkm_normalize_relocations(), and integrate with updateFipsHash().
2025-08-22 00:38:06 -05:00
Kareem
077beaecd8
Fix memory leak in unit test, fix for loop syntax.
2025-08-21 16:33:57 -07:00
Kareem
b53db94f1e
x509_verify_cert: Code review feedback.
2025-08-21 15:35:29 -07:00
David Garske
7ab4c6fa14
Merge pull request #9087 from JacobBarthelmeh/dhuk
...
initial SAES and DHUK support
2025-08-21 14:32:20 -07:00
David Garske
da8ffd5762
Merge pull request #8463 from JacobBarthelmeh/sgx
...
updating the build with SGX
2025-08-21 11:06:35 -07:00
JacobBarthelmeh
42c5324962
SAES does not have GCM support, added IV option for CBC wrapping of key
2025-08-21 09:26:40 -06:00
Sean Parkinson
d66c69eaec
Merge pull request #9079 from holtrop/error-getshortint-on-negative-values
...
Error from GetShortInt with negative INTEGER values
2025-08-21 08:35:17 +10:00
Sean Parkinson
b3366acdaf
Merge pull request #9103 from rlm2002/zd20314-reduce-binary-footprint
...
Exclude assembly files when WOLFSSL_ARMASM_INLINE is defined
2025-08-21 08:33:39 +10:00
Sean Parkinson
b1cdf0b214
TLS 1.3 KeyShare: error on duplicate group
...
Don't allow a KeyShare extension from the client to have more
than one entry for any group.
2025-08-21 08:23:31 +10:00
JacobBarthelmeh
658c3d69fb
use memset, fix unlock, adjust return value checks
2025-08-20 13:53:27 -06:00
JacobBarthelmeh
993099e47e
Merge pull request #9114 from douzzer/20250819-debug-trace-errcodes-dist-artifacts
...
20250819-debug-trace-errcodes-dist-artifacts
2025-08-20 10:48:38 -06:00
David Garske
79fe6e467b
Merge pull request #9112 from SparkiDev/tls13_onlyDhePskKe_fix
...
TLS 1.3: Fix for onlyDhePskKe
2025-08-20 06:44:08 -07:00
David Garske
596e211a97
Merge pull request #9113 from SparkiDev/tls13_certvfy_sigalg_check
...
TLS 1.3: CertificateVerify - check sig alg was sent
2025-08-20 06:44:03 -07:00
Josh Holtrop
d2f139c9b0
Error from GetShortInt with negative INTEGER values - Add WORD8 case
2025-08-20 09:34:19 -04:00
Ruby Martin
0e6e040039
formatting remove whitespace
...
format whitespace so tabs are 4 spaces
format character count to be 80 characters or less per line
remove bracket
2025-08-19 17:08:53 -06:00
Daniel Pouzzner
5f7e2389d9
wolfssl/include.am: include wolfssl/debug-trace-error-codes.h and wolfssl/debug-untrace-error-codes.h in dist archives.
2025-08-19 17:09:58 -05:00
JacobBarthelmeh
8119034555
work around for shellcheck warning
2025-08-19 14:32:34 -06:00
JacobBarthelmeh
23498c293e
cpuid dummy call with sgx and fix assembly SP + SGX build
2025-08-19 14:32:33 -06:00
JacobBarthelmeh
44784729c0
touch up clean script and comment out sp-asm for now
2025-08-19 14:32:33 -06:00
JacobBarthelmeh
59ac260ae8
add option for building sgx with assembly optimizations
2025-08-19 14:32:33 -06:00
JacobBarthelmeh
9cdbc03a23
Merge pull request #9111 from douzzer/20250818-configure-linuxkm-fips-v5
...
20250818-configure-linuxkm-fips-v5
2025-08-19 14:31:08 -06:00
Josh Holtrop
98b6b92a76
Error from GetShortInt with negative INTEGER values
2025-08-19 12:40:48 -04:00
Sean Parkinson
2810656242
TLS 1.3: CertificateVerify - check sig alg was sent
...
Check that the signature algorithm used in the CertificateVerify message
was one that was sent in the SignatureAlgorithm extension.
2025-08-19 16:27:19 +10:00
Sean Parkinson
cd55fe6135
TLS 1.3: Fix for onlyDhePskKe
...
Make client enforce onlyDhPskKe flag.
2025-08-19 14:29:30 +10:00
Daniel Pouzzner
b9cc060340
configure.ac: tweaks for ENABLED_LINUXKM_DEFAULTS and FIPS v5.
2025-08-18 18:21:57 -05:00
JacobBarthelmeh
c089abe92f
add macro to list
2025-08-18 16:47:30 -06:00
Ruby Martin
27d03fce7a
additional check for ARM ASM Inline option
...
append thumb2 files, append inline c files with BUILD_ARMASM_INLINE
add all asm files. move curve25519 files under BUILD_CURVE25519
include remaining files
2025-08-18 15:41:43 -06:00
David Garske
f114f2cde2
Merge pull request #9093 from kareem-wolfssl/zd20372
...
Multiple fixes to wolfSSL_CIPHER_description to match documentation.
2025-08-18 13:43:53 -07:00
JacobBarthelmeh
fb6375551b
updating unwrap/wrap with use of DHUK
2025-08-18 13:38:26 -06:00
Kareem
aa6f1b231a
Fix memory leak in X509StoreRemoveCa.
2025-08-18 10:21:54 -07:00
Kareem
19b778dda0
Protect against exceeding original depth, fix overlong lines.
2025-08-18 10:21:54 -07:00
Kareem
cb985dcfa8
ECC required for newly added unit test.
2025-08-18 10:21:54 -07:00
Kareem
60c84744c8
Fix memory leak in x509_verify_cert itself, the failed certs need a pop_free call so the reference is properly decremented, as they are no longer in the X509_STORE.
2025-08-18 10:21:53 -07:00
Kareem
1e367597b6
Fix memory leak in newly added unit test.
2025-08-18 10:21:53 -07:00
Kareem
6b01053d98
Add test case for new x509_verify_cert retry functionality.
...
Add CA cert with the same SKI and intentionally invalid AKI as part of x509_verify_cert test case.
2025-08-18 10:21:53 -07:00
Kareem
027f0891f4
Don't fail out if X509StoreRemoveCa fails, since adding the temp CA was optional, it is possible there is no temp CA to remove.
2025-08-18 10:21:53 -07:00
Kareem
aaadb7971d
Fix narrowing conversion of type in RemoveCa.
2025-08-18 10:21:53 -07:00
Kareem
7b4a50b701
Add missing XFREE for dCert.
2025-08-18 10:21:53 -07:00
Kareem
d6f603b661
Add X509StoreRemoveCa wrapper around RemoveCa
...
WOLFSSL_X509's calculated subject key hash is not guaranteed to match the cert's,
ie. in the case that NO_SHA is defined. Use the same logic as AddCa,
parsing the DER cert and using the decoded cert's subject key hash.
2025-08-18 10:21:53 -07:00
Kareem
15a147d957
Remove incorrectly added NULL check, add debug logging to RemoveCA.
2025-08-18 10:21:53 -07:00
Kareem
f9eda18445
Fix missing cast and correct freeing of certs.
2025-08-18 10:21:53 -07:00
Kareem
946f20ccc7
Add type parameter to RemoveCA to avoid removing CAs of the wrong type.
2025-08-18 10:21:53 -07:00
Kareem
025dbc3454
Retry all certificates passed into wolfSSL_X509_verify_cert until a valid chain is found, rather than failing out on the first invalid chain. This allows for registering multiple certs with the same subject key, ie. alt cert chains.
2025-08-18 10:21:52 -07:00
Sean Parkinson
43f94a5d7d
Merge pull request #9107 from douzzer/20250816-cpuid_get_flags_ex-optimize
...
20250816-cpuid_get_flags_ex-optimize
2025-08-18 22:13:44 +10:00
Sean Parkinson
0ba16a9c5b
Merge pull request #9104 from kojiws/export_long_key_orig_asn
...
Improve original implementation on SetAsymKeyDer() and the test
2025-08-18 22:11:25 +10:00
Daniel Pouzzner
39c6c5af6f
wolfcrypt/src/cpuid.c, wolfssl/wolfcrypt/cpuid.h: change cpuid_flags_t to a
...
regular word32, and use non-atomics for general flag checking, with a new
implementation of cpuid_get_flags_ex() that is threadsafe by idempotency;
rename strictly-threadsafe cpuid_get_flags_ex() as cpuid_get_flags_atomic()
(strictly accurate return value), and add cpuid_flags_atomic_t and
WC_CPUID_ATOMIC_INITIALIZER, used only for internal manipulation of flags in
cpuid.c where atomicity matters.
2025-08-16 13:04:28 -05:00
lealem47
b096d9b250
Merge pull request #9106 from dgarske/zd20399
...
Fix sniffer issue handling TLS records with multiple handshake messages to be skipped
2025-08-15 15:57:00 -06:00
David Garske
32b0bd963b
Fix issue introduced in PR #9051 causing TLS records with multiple handshake messages to be skipped (ZD 20399)
2025-08-15 10:08:28 -07:00
David Garske
a98006eca9
Merge pull request #9105 from douzzer/20250815-dilithium-dilithium_expand_s-UndefinedBinaryOperatorResult
...
20250815-dilithium-dilithium_expand_s-UndefinedBinaryOperatorResult
2025-08-15 09:07:38 -07:00
Daniel Pouzzner
10a05ad839
wolfcrypt/src/dilithium.c: fix dilithium_expand_s() to fall through to dilithium_expand_s_c() for s1Len not implemented for USE_INTEL_SPEEDUP.
2025-08-15 09:48:55 -05:00
Juliusz Sosinowicz
ffe3d80f8d
Merge pull request #9097 from douzzer/20250812-atomic-cmpxchg
...
20250812-atomic-cmpxchg
2025-08-15 01:14:45 +02:00
Sean Parkinson
5b1302e4df
Merge pull request #9094 from dgarske/zd20369
...
Fix to better detect sniffer invalid spurious re-transmissions
2025-08-15 09:01:02 +10:00
Sean Parkinson
228ede7495
Merge pull request #9102 from rlm2002/zd20212
...
Remove dead code and check return values.
2025-08-15 08:21:38 +10:00
Daniel Pouzzner
c5bbf4c7e0
Merge pull request #9085 from effbiae/while-pending
...
`wolfSSL_AsyncPoll` calls refactor
2025-08-14 14:51:05 -05:00
David Garske
e00fd2fd70
Fix to better detect invalid spurious retransmission.
2025-08-14 12:19:39 -07:00
Kareem
c535e281c6
Skip unit test when using Apple native cert validation.
2025-08-14 11:34:15 -07:00
Kareem
cb3f7de3f7
Fix issues found by CI/CD tests.
2025-08-14 11:34:15 -07:00
Kareem
3bcbbd2924
Fix issue with loading PEM certs. Address code review feedback.
...
Add tests.
2025-08-14 11:34:15 -07:00
Kareem
a652b733e4
Fix conversion warning.
2025-08-14 11:34:15 -07:00
Kareem
ab342978d7
Fix implicit conversion warning.
2025-08-14 11:34:14 -07:00
Kareem
61ccea55ac
Allow setting the CA type when loading into cert manager
...
and unloading specific CA types from the cert manager.
2025-08-14 11:34:14 -07:00
Kareem
cb623dc9ea
Multiple fixes to wolfSSL_CIPHER_description to match documentation.
...
Add "any" value for TLS 1.3 cipher suites.
Fix key size comparison for enc bits.
Output AEAD as MAC if cipher suite is using it, otherwise output hash MAC.
2025-08-14 11:27:10 -07:00
Koji Takeda
0a9356e645
Improve original implementation on SetAsymKeyDer() and the test
2025-08-15 00:04:01 +09:00
Daniel Pouzzner
cefeb4cd7e
atomics/cpuid_flags fixes from peer review:
...
wolfcrypt/src/cpuid.c: cpuid_set_flag() and cpuid_clear_flag() thread safety;
wolfcrypt/src/wc_port.c: comments re __ATOMIC_SEQ_CST and __ATOMIC_ACQUIRE;
wolfssl/wolfcrypt/wc_port.h: single overrideable definitions for WOLFSSL_ATOMIC_COERCE_[U]INT(), and comment cleanup.
also added WOLFSSL_USER_DEFINED_ATOMICS.
2025-08-14 09:33:14 -05:00
Daniel Pouzzner
bd4e723f9d
add cpuid_flags_t, WC_CPUID_INITIALIZER, and cpuid_get_flags_ex();
...
refactor all static flag initializations to use cpuid_get_flags_ex() for race-free dynamics;
refactor cpuid_set_flags() to be race-free;
wolfssl/wolfcrypt/wc_port.h and wolfcrypt/src/wc_port.c: add
* WOLFSSL_ATOMIC_COERCE_INT()
* WOLFSSL_ATOMIC_COERCE_UINT()
* wolfSSL_Atomic_Uint
* wolfSSL_Atomic_Uint_Init()
* wolfSSL_Atomic_Int_AddFetch()
* wolfSSL_Atomic_Int_SubFetch()
* wolfSSL_Atomic_Int_CompareExchange()
* wolfSSL_Atomic_Uint_FetchAdd()
* wolfSSL_Atomic_Uint_FetchSub()
* wolfSSL_Atomic_Uint_AddFetch()
* wolfSSL_Atomic_Uint_SubFetch()
* wolfSSL_Atomic_Uint_CompareExchange()
wolfcrypt/test/test.c: add to memory_test() tests for all atomic macros and APIs;
.github/workflows/pq-all.yml: don't use -Wpedantic for CC=c++ scenario.
2025-08-14 08:44:28 -05:00
Sean Parkinson
a1dd7dae6f
Merge pull request #9095 from miyazakh/add_sha512_typeproperty
...
Add hashtype property to wc_Sha512 structure
2025-08-14 21:43:06 +10:00
Sean Parkinson
102525c9c9
Merge pull request #9100 from dgarske/cryptocb_only
...
Improve some of the build cases around crypto callback only
2025-08-14 21:41:26 +10:00
Sean Parkinson
034df3d28f
Merge pull request #9101 from dgarske/asm_introspection
...
Add assembly introspection for RISC-V and PPC32
2025-08-14 21:38:42 +10:00
Daniel Pouzzner
a64c719fd2
Merge pull request #9092 from douzzer/20250812-Base64_Decode-outLen-bounds-fix
...
20250812-Base64_Decode-outLen-bounds-fix
reviewed+approved by @dgarske and @SparkiDev
2025-08-13 23:15:04 -05:00
effbiae
0e3f877326
WOLFSSL_ASYNC_WHILE_PENDING refactor
2025-08-14 12:03:13 +10:00
JacobBarthelmeh
8458b5ec1d
Merge pull request #9053 from rlm2002/sessionTickets
...
update wolfSSL_get_SessionTicket to be able to return ticket length
2025-08-13 17:19:52 -06:00
Ruby Martin
18f3f22a7e
add option for WOLFSSL_ARMASM_INLINE to CMake
2025-08-13 17:05:48 -06:00
Daniel Pouzzner
7fe890d5e7
wolfcrypt/src/coding.c: clean up comment in Base64_Decode(), per peer review.
2025-08-13 18:00:36 -05:00
Daniel Pouzzner
344db9d7f7
wolfcrypt/src/coding.c: in Base64_Decode_nonCT() and Base64_Decode(), remove overly restrictive preamble check on outLen; return BUFFER_E, not BAD_FUNC_ARG, when output buffer is too short (similarly fixed in Base16_Decode());
...
wolfcrypt/test/test.c: add N_BYTE_TEST() and test vectors to test all input and output length scenarios.
2025-08-13 17:43:33 -05:00
Ruby Martin
dc18f404ca
remove dead code in fe_operations.c
2025-08-13 16:34:14 -06:00
Ruby Martin
71c2878780
verify previously unchecked return values
2025-08-13 16:28:36 -06:00
David Garske
53c36f8529
Add assembly introspection for RISC-V and PPC32.
2025-08-13 22:30:15 +01:00
David Garske
d79ca8a746
Improve some of the build cases around crypto callback only
2025-08-13 21:58:53 +01:00
Hideki Miyazaki
b67e063535
add hashtype property to wc_Sha512
2025-08-14 05:37:40 +09:00
Daniel Pouzzner
22b221a8be
Merge pull request #9099 from gojimmypi/pr-cert-test-sizeof
...
Change certs_test sizeof const to define for Watcom
2025-08-13 14:41:21 -05:00
gojimmypi
f279f9cd71
Change certs_test sizeof const to define for Watcom
2025-08-13 11:58:59 -07:00
Ruby Martin
a725f4d7ac
update wolfSSL_get_SessionTicket() function dox comment
2025-08-13 08:29:30 -06:00
Ruby Martin
a02025d0c9
add session ticket length return check to api tests
2025-08-13 08:29:30 -06:00
Ruby Martin
31bf1b90b4
update wolfSSL_get_SessionTicket to be able to return ticket length
2025-08-13 08:29:30 -06:00
Daniel Pouzzner
8d24a30996
Merge pull request #9096 from julek-wolfssl/libssh2-tests-fix
...
Fix libssh2 tests
2025-08-13 08:42:24 -05:00
Juliusz Sosinowicz
c8c93d2218
Fix libssh2 tests
2025-08-13 14:44:40 +02:00
David Garske
3289b6b3da
Merge pull request #9089 from douzzer/20250811-linuxkm-and-other-fixes
...
20250811-linuxkm-and-other-fixes
2025-08-12 11:40:36 -07:00
Daniel Pouzzner
e24f76bb1e
Merge pull request #9057 from SparkiDev/mldsa_x64_asm
...
ML-DSA/Dilithium: Intel x64 ASM
2025-08-11 23:12:44 -05:00
Daniel Pouzzner
2d1c797b64
fixes from cppcheck-force-source: in src/bio.c:wolfSSL_BIO_vprintf() and
...
wolfcrypt/src/logging.c:WOLFSSL_MSG_CERT_EX(), add missing gating on
defined(XVSNPRINTF);
in src/crl.c:CRL_Entry_new(), fix true-positive nullPointerRedundantCheck;
in src/pk.c:_DH_compute_key(), add bounds checking to ForceZero(priv).
2025-08-11 18:12:44 -05:00
Daniel Pouzzner
11d84bea86
wolfcrypt/src/rsa.c: fix improperly handled SAVE_VECTOR_REGISTERS() retval in
...
wc_CheckProbablePrime_ex(), and in wc_MakeRsaKey(), make sure not to
RESTORE_VECTOR_REGISTERS() if SAVE_VECTOR_REGISTERS() failed.
2025-08-11 16:14:32 -05:00
Daniel Pouzzner
7b077737a9
src/crl.c: fix nullPointerRedundantCheck in CRL_Entry_free().
2025-08-11 16:14:32 -05:00
Daniel Pouzzner
29dd6cce98
wolfssl/wolfcrypt/logging.h: add WOLFSSL_MSG_CERT_LOG_EX, give
...
WOLFSSL_DEBUG_CERTS definitions priority when defining WOLFSSL_MSG_CERT_LOG()
and WOLFSSL_MSG_CERT_LOG_EX, update documentation in preamble, and fix the
WOLFSSL_ANDROID_DEBUG definition of WOLFSSL_DEBUG_PRINTF_FIRST_ARGS and the
WOLFSSL_ESPIDF definition of WOLFSSL_DEBUG_PRINTF();
src/ssl_load.c: use WOLFSSL_MSG_CERT_LOG_EX(), not WOLFSSL_DEBUG_PRINTF(), in
ProcessFile().
2025-08-11 16:14:32 -05:00
Daniel Pouzzner
f4fefcbd5e
configure.ac: for linuxkm, don't set ENABLED_ENTROPY_MEMUSE_DEFAULT to yes on FIPS v5-;
...
linuxkm/linuxkm_wc_port.h: add WC_SVR_FLAG_NONE;
wolfssl/wolfcrypt/settings.h: for WOLFSSL_LINUXKM setup for WC_RESEED_INTERVAL,
use UINT_MAX if FIPS v5-;
wolfssl/wolfcrypt/types.h: add definitions for SAVE_NO_VECTOR_REGISTERS2, and
map no-op SAVE_VECTOR_REGISTERS2() to it.
2025-08-11 16:14:32 -05:00
Daniel Pouzzner
6617f2edf8
wolfcrypt/src/memory.c, wolfcrypt/src/misc.c, and wolfssl/wolfcrypt/misc.h: move
...
the new implementation of wc_ForceZero from wolfcrypt/src/memory.c to inline in
wolfcrypt/src/misc.c replacing old ForceZero() implementation, and add a wrapper
wc_ForceZero() to wolfcrypt/src/memory.c.
2025-08-11 16:14:32 -05:00
Albert Ribes
e36daf41a4
Store in extensions the full octet string ( #8967 )
...
* Store in extensions the full octet string
Store in WOLFSSL_X509_EXTENSION.value always the full contents of the
OCTET STRING of the extension, instead of different type of data
depending on the type of extension. Previously this was only done for
unknown extensions.
* Avoid local variables in 'DecodeExtKeyUsageInternal'
There is a great performance loss on configs using 'WOLFSSL_NO_MALLOC',
'WOLFSSL_STATIC_MEMORY' and 'USE_FAST_MATH' if function
'DecodeExtKeyUsageInternal' uses intermediate variables. This can be
observed running the Zephyr test 'wolfssl_test/prj-no-malloc.conf'.
Avoid using intermediate variables, and use raw pointers to the final
destination instead.
* Add missing calls to 'FreeDecodedCert'
* Return error code from 'wolfSSL_ASN1_STRING_into_old_ext_fmt'
* Fix lines larger than 80
* Allow NULL parameters for 'DecodeAuthKeyId'
* Add comment explaining build option '--enable-old-extdata-fmt'
* Test full OCTET STRING in tests/api.c
* wolfSSL_X509V3_EXT_d2i: Honor 'WOLFSSL_SMALL_STACK'
* zephyr/wolfssl_test_no_malloc: Increase test timeout
* wolfSSL_X509V3_EXT_d2i: Extract repeated code into common part
* wolfcrypt: Remove 'WOLFSSL_LOCAL' from .c files
* wolfcrypt: Change location of functions to make diff easier
2025-08-11 10:33:15 -07:00
JacobBarthelmeh
9ad7e79dfc
initial SAES and DHUK support
2025-08-11 08:46:29 -06:00
Sean Parkinson
55f30adb3e
Merge pull request #9077 from douzzer/20250807-wc_ForceZero-and-linuxkm-RHEL9v6
...
20250807-wc_ForceZero-and-linuxkm-RHEL9v6
2025-08-11 21:06:51 +10:00
Daniel Pouzzner
5a402b2254
Merge pull request #9076 from gojimmypi/pr-fence-atomics
...
Disallow atomics during fence & WOLFSSL_NO_ATOMIC
2025-08-08 23:46:30 -05:00
Daniel Pouzzner
260fca600a
Merge pull request #8902 from gojimmypi/pr-cert-logging
...
Introduce WOLFSSL_DEBUG_CERTS Certificate Debug Messages
2025-08-08 23:44:03 -05:00
Daniel Pouzzner
9236b81ade
Merge pull request #9078 from rlm2002/cppCheck
...
Changes for cppcheck=force-source errors and warnings
2025-08-08 23:29:30 -05:00
Daniel Pouzzner
46394f3da3
Merge pull request #9075 from gojimmypi/pr-small-oids
...
Force old OID values: WOLFSSL_OLD_OID_SUM for WC_16BIT_CPU
2025-08-08 23:29:09 -05:00
Daniel Pouzzner
db7702f66c
Merge pull request #9065 from rlm2002/zd20212
...
Update fe_448.c from script
2025-08-08 23:28:52 -05:00
Daniel Pouzzner
b3496a04d6
Merge pull request #9073 from holtrop/fix-inconsistent-prototype-parameter-names-wolfssl
...
Fix inconsistent function prototype parameter names for wolfssl
2025-08-08 23:28:33 -05:00
Daniel Pouzzner
9dc4b71112
Merge pull request #9069 from holtrop/fix-inconsistent-prototype-parameter-names
...
Fix inconsistent function prototype parameter names for wolfcrypt
2025-08-08 23:28:10 -05:00
Daniel Pouzzner
e6c6ef64df
Merge pull request #9047 from miyazakh/rz_update
...
Update Renesas RZ examples
2025-08-08 23:27:35 -05:00
Daniel Pouzzner
2960844c3e
Merge pull request #9068 from holtrop/fix-misra-3.1-violations
...
Fix MISRA rule 3.1 violations
2025-08-08 23:27:04 -05:00
Ruby Martin
6070ca8499
remove nested check for ssl->options.dtls
...
move cidSz declaration
2025-08-08 10:46:35 -06:00
Ruby Martin
e631f2e56e
add ret check before assigning row value
2025-08-08 10:40:09 -06:00
Ruby Martin
1cfbc92ce2
initialize info var
2025-08-08 10:40:09 -06:00
Ruby Martin
9e3f726b0e
add null checks for function arguments that return BAD_FUNC_ARG
...
update function comment
2025-08-08 10:40:09 -06:00
Ruby Martin
f5a4b13391
initialize lpMsgBuf
2025-08-08 10:40:09 -06:00
Ruby Martin
35ea769c9f
add null check to CRL_Entry_free()
2025-08-08 10:40:09 -06:00
Daniel Pouzzner
a821e4cfa2
wolfcrypt/src/memory.c and wolfssl/wolfcrypt/memory.h: add WOLFSSL_API void wc_ForceZero().
2025-08-07 21:57:56 -05:00
Ruby Martin
948f90251a
clear invalidPrintfArgType warnings. initialize wc_Memory* pt to null
2025-08-07 16:48:46 -06:00
Ruby Martin
cf3f7b9911
modify argument for unsigned int
...
adjust warning for invalidPrintfArgType
2025-08-07 16:48:46 -06:00
gojimmypi
e6ffbfb601
Disallow atomics during fence & WOLFSSL_NO_ATOMIC
2025-08-07 15:18:42 -07:00
Sean Parkinson
9470668538
Merge pull request #9074 from douzzer/20250807-redo-PR8900
...
20250807-redo-PR8900
2025-08-08 08:12:42 +10:00
Daniel Pouzzner
a01d4c2d5f
linuxkm/module_hooks.c: suppress -Wunused-parameter when including crypto/hash.h (for RHEL 9.6).
2025-08-07 17:09:10 -05:00
Takashi Kojo
8bd4fb52c8
Merge pull request #9072 from julek-wolfssl/dtls-replay-test
...
Test DTLS replay protection
2025-08-08 06:26:15 +09:00
gojimmypi
256836fe6f
Force WOLFSSL_OLD_OID_SUM for WC_16BIT_CPU
2025-08-07 11:23:34 -07:00
Juliusz Sosinowicz
0d532cc3f2
Test DTLS replay protection
2025-08-07 19:52:05 +02:00
Daniel Pouzzner
2dfc7eee89
wolfcrypt/src/sp_int.c: in _sp_exptmod_nct(), use 2 bit window if bits <= 21.
2025-08-07 10:26:34 -05:00
Daniel Pouzzner
40506a6ddf
Revert "SP int: modular exponentiation constant time" (fixes regression in benchmark "RSA,2048,public").
...
This reverts commit 219509d7d9 .
2025-08-07 10:14:02 -05:00
David Garske
5a8b86da5d
Merge pull request #9054 from gojimmypi/pr-please-use-debug-wolfssl
...
Please use DEBUG_WOLFSSL not WOLFSSL_DEBUG
2025-08-07 07:42:42 -07:00
Ruby Martin
782d0b9828
remove casts
2025-08-07 08:23:38 -06:00
David Garske
b4d186004c
Merge pull request #9070 from miyazakh/cb_sha224
...
Support sha224 cryptocb
2025-08-07 07:07:05 -07:00
Josh Holtrop
e6eac9b920
Fix inconsistent function prototype parameter names for wolfssl
2025-08-07 09:28:50 -04:00
Josh Holtrop
61f1223f1d
Fix inconsistent function prototype parameter names for wolfcrypt
2025-08-07 08:02:56 -04:00
Sean Parkinson
648a057147
ML-DSA/Dilithium: Intel x64 ASM
...
Optimize code knowing it is for Intel x64.
Change signing to calculate one polynomial at a time so that if it isn't
valid then we fail early.
Other minor improvements.
Move the SHA-3 4 blocks at a time assembly into SHA-3 asm file.
Make constants in assembly the same length (front pad with zeros).
2025-08-07 14:01:50 +10:00
Hideki Miyazaki
07b3695b98
wc_Sha224Final also needs to call cb
2025-08-07 09:50:06 +09:00
Hideki Miyazaki
d1bf35b209
add sha224_test() call to cryptocb test
2025-08-07 08:14:26 +09:00
Hideki Miyazaki
ccdef57e8e
add sha224 cryptcb
2025-08-07 07:49:53 +09:00
gojimmypi
d64ef34ef8
Introduce WOLFSSL_DEBUG_CERTS Certificate Debug Messages
2025-08-06 13:57:53 -07:00
Josh Holtrop
33d0e1e51c
Fix MISRA rule 3.1 violations
2025-08-06 12:08:15 -04:00
Daniel Pouzzner
339f7efbf4
Merge pull request #9066 from holtrop/fix-misra-8.2-violations
...
fe_operations.h: fix MISRA rule 8.2 violations by naming function prototype parameters
2025-08-06 11:04:44 -05:00
Daniel Pouzzner
cc137e99fe
Merge pull request #8900 from SparkiDev/rsa_mod_exp_nct
...
SP int: modular exponentiation constant time
2025-08-06 11:04:28 -05:00
Daniel Pouzzner
753a6b1083
Merge pull request #9063 from SparkiDev/sha3_xorbuf
...
SHA-3 C code: use xorbuf for little-endian builds
2025-08-06 11:04:10 -05:00
Daniel Pouzzner
76c4ee9ff5
Merge pull request #9056 from SparkiDev/asn_orig_decrypt_content_fix
...
ASN.1 original: Fix DecryptContent to check sequence len
2025-08-06 11:03:49 -05:00
Daniel Pouzzner
b8463dc5c1
Merge pull request #9062 from kareem-wolfssl/gh9059
...
Fix wolfSSL_i2d_PublicKey not returning SPKI format for ECC keys.
2025-08-06 11:03:28 -05:00
Daniel Pouzzner
8e5e273aca
Merge pull request #9044 from JacobBarthelmeh/docs
...
add static memory doxygen comments for APIs
2025-08-06 11:02:57 -05:00
Daniel Pouzzner
8e77ee5c2a
Merge pull request #9064 from SparkiDev/test_api_c_split_2
...
api.c: split out more tests into separate files
2025-08-06 10:51:25 -05:00
Daniel Pouzzner
53eedd4b38
Merge pull request #9041 from julek-wolfssl/zero-sha->buffer
...
Zero sha->buffer
2025-08-06 10:50:53 -05:00
David Garske
8ff0f455f8
Merge pull request #9067 from douzzer/20250805-clang-and-linuxkm-fixes
...
20250805-clang-and-linuxkm-fixes
2025-08-06 05:59:49 -07:00
Hideki Miyazaki
53ae865184
Addressed code review
2025-08-06 19:13:20 +09:00
Masaki Iwai
e9292e301f
add _new/_delete API for ML-KEM/ML-DSA
2025-08-06 16:52:15 +09:00
Kareem
36e0e3aa53
Fix wolfSSL_i2d_PublicKey not returning SPKI format for ECC keys.
2025-08-05 17:20:47 -07:00
Daniel Pouzzner
034cbb9b97
tests/api.c: fix -Wuninitialized-const-pointer in test_wolfSSL_CertManagerAPI();
...
wolfcrypt/benchmark/benchmark.c:
* use WC_RELAX_LONG_LOOP() as default definition of TEST_SLEEP(), and remove WC_RELAX_LONG_LOOP() from bench_stats_sym_finish()/bench_stats_asym_finish_ex();
* when WOLFSSL_LINUXKM but !WOLFSSL_LINUXKM_USE_SAVE_VECTOR_REGISTERS., properly wrap kernel_fpu_begin...end around floating point ops.
2025-08-05 17:05:36 -05:00
Sean Parkinson
dbb75c46c9
ASN.1 original: Fix DecryptContent to check sequence len
...
Original ASN.1 code wasn't checking that data in a sequence didn't
exceed the length of the sequence.
In particular, the contents of the parameters and the PKCS#5 parameters.
2025-08-06 07:42:09 +10:00
Sean Parkinson
d0f8493c6a
SHA-3 C code: use xorbuf for little-endian builds
...
Instead of loading 64-bits with alignment protection, use xorbuf which
has built in protection.
Only XOR in as much data as cached and XOR padding and rate bit directly
rather than XORing maximum amount after clearing out rest of array and
adding in padding and rate bit.
2025-08-06 07:39:53 +10:00
Sean Parkinson
219509d7d9
SP int: modular exponentiation constant time
...
Using a 1-bit window size for small exponentsisn't useful.
2025-08-06 07:38:37 +10:00
gojimmypi
7c9327a36b
Please use DEBUG_WOLFSSL not WOLFSSL_DEBUG
2025-08-05 12:19:30 -07:00
Josh Holtrop
90d4efa1e6
fe_operations.h: fix MISRA rule 8.2 violations by naming function prototype parameters
2025-08-05 13:09:42 -04:00
David Garske
1693f72af7
Fixes for issues copilot found.
2025-08-05 07:22:04 -07:00
David Garske
649b6ede69
Merge pull request #9058 from kojiws/fix_cid_535964
...
Fix CID 535964
2025-08-05 07:08:59 -07:00
Sean Parkinson
b40e3d479f
api.c: split out more tests into separate files
...
wolfCrypt PKCS7
wolfCrypt PKCS12
OpenSSL compat ASN.1
OpenSSL compat BN
OpenSSL comppat BIO
OpenSSL comppat Digest
OpenSSL comppat MAC
OpenSSL comppat Cipher
OpenSSL comppat RSA
OpenSSL comppat DH
OpenSSL comppat EC
OpenSSL comppat ECX
OpenSSL comppat DSA
2025-08-05 19:32:56 +10:00
Koji Takeda
bfb2a817e3
Fix CID 535964
2025-08-05 13:25:42 +09:00
David Garske
8e52978153
Merge pull request #9061 from gojimmypi/pr-fix-haproxy-workflow
...
Update HAProxy build-vtest: fix v3.1.0 and add v3.2.0
2025-08-04 19:57:15 -07:00
gojimmypi
6e795f149c
Update HAProxy build-vtest: fix v3.1.0 and add v3.2,0
2025-08-04 12:38:27 -07:00
JacobBarthelmeh
c22c37df09
Merge pull request #9055 from rlm2002/zd20212
...
Coverity changes
2025-08-04 10:34:29 -06:00
Ruby Martin
598a3e6232
check return value of wc_DhGetNamedKeyParamSize
2025-08-01 14:56:35 -06:00
JacobBarthelmeh
040e2102a8
Merge pull request #9049 from kojiws/import_mldsa_seed_pkcs8_reapply
...
Reapply - Import ML-DSA's seed from PKCS8 file
2025-08-01 14:34:09 -06:00
JacobBarthelmeh
367e3e4246
fix for wolfSSL_StaticBufferSz_ex function signature
2025-08-01 10:32:41 -06:00
JacobBarthelmeh
0392ee009f
Merge pull request #9033 from anhu/mlkem-hybrid-draft-names-wolfssl
...
Rename ML-KEM hybrids to match IETF Draft.
2025-08-01 10:21:54 -06:00
Hideki Miyazaki
8e6b13822b
fix trailing whitespace, adding files to am and know macro
2025-08-01 17:36:23 +09:00
Hideki Miyazaki
a63bb12f6b
Move devId from internal to public
...
- addressed code review by devin
2025-08-01 16:58:16 +09:00
JacobBarthelmeh
65e7f2c40f
Merge pull request #9051 from lealem47/zd20288
...
Sniffer: Fix infinite recursion caused by an OOO appData packet
2025-07-31 14:50:36 -06:00
JacobBarthelmeh
86adcd6c8e
Merge pull request #9048 from douzzer/20250730-linuxkm-tweaks
...
20250730-linuxkm-tweaks
2025-07-31 14:36:56 -06:00
Daniel Pouzzner
1152d612a6
wolfcrypt/benchmark/benchmark.c: smallstack refactors for bench_mlkem() and bench_dilithiumKeySign(), and globally replace stray uses of fprintf(stderr, ...) with printf(...) for portability.
2025-07-31 11:30:42 -05:00
Daniel Pouzzner
bbd606538a
linuxkm/linuxkm_wc_port.h, linuxkm/x86_vector_register_glue.c, linuxkm/Kbuild:
...
* rename can_save_vector_registers_x86(), save_vector_registers_x86(), and restore_vector_registers_x86(), with wc_ prefix, and properly export them;
* move setup for WOLFSSL_LINUXKM_USE_SAVE_VECTOR_REGISTERS outside BUILDING_WOLFSSL gate;
* fix !BUILDING_WOLFSSL bindings for DISABLE_VECTOR_REGISTERS() to properly fall through to no-ops in !WOLFSSL_LINUXKM_USE_SAVE_VECTOR_REGISTERS configs, and properly #error if WOLFSSL_LINUXKM_USE_SAVE_VECTOR_REGISTERS but !CONFIG_X86;
.github/workflows/linuxkm.yml: --enable-linuxkm-benchmarks for additional coverage.
2025-07-31 10:37:39 -05:00
Lealem Amedie
0e8aab241d
Sniffer: Fix infinte recursion caused by an OOO appData packet
2025-07-31 09:31:59 -06:00
Anthony Hu
6f66f4fda3
Use correct string in the unit tests.
2025-07-31 10:35:32 -04:00
Koji Takeda
2891815965
Fix errors on #9000
2025-07-31 16:04:22 +09:00
Koji Takeda
09deacbe8f
Revert "Merge pull request #9045 from douzzer/20250730-revert-PR9000"
...
This reverts commit 70af2be5ab , reversing
changes made to 46347173b2 .
2025-07-31 14:14:51 +09:00
Daniel Pouzzner
c353052e54
linuxkm/linuxkm_wc_port.h:
...
* move enum wc_svr_flags out of BUILDING_WOLFSSL guard;
* add DISABLE_VECTOR_REGISTERS() and REENABLE_VECTOR_REGISTERS() definitions for !BUILDING_WOLFSSL;
* add #include <linux/spinlock.h> to !WOLFSSL_LINUXKM_USE_MUTEXES implementation to fix compilation (and add usability) to caller code;
linuxkm/lkcapi_sha_glue.c: in wc_linuxkm_drbg_ctx_clear(), fix error-path deallocation of locked object;
wolfcrypt/benchmark/benchmark.c:
* in FIPS v6+ builds, and FIPS linuxkm v5+, check retval from wc_AesEncryptDirect() and wc_AesDecryptDirect();
* add WC_RELAX_LONG_LOOP() in bench_stats_sym_finish() and bench_stats_asym_finish_ex();
wolfcrypt/test/test.c: fix rng_seed_test() with correct test vectors for the relevant combinations of features, and gate the test out if there are user override defines for ENTROPY_SCALE_FACTOR or SEED_BLOCK_SZ.
2025-07-30 22:15:05 -05:00
Hideki Miyazaki
9b7caac3ef
Update RZ examples
...
- Use xSPI0 boot mode
- Update FSP from v1.3 to v2.0.0
- Simplify UART
- Migrate new User Ctx
- Update README
- Fix SCE TLS on RA6M4
2025-07-31 11:04:06 +09:00
JacobBarthelmeh
ee4e511a01
remove trailing white spaces
2025-07-30 17:02:23 -06:00
JacobBarthelmeh
70af2be5ab
Merge pull request #9045 from douzzer/20250730-revert-PR9000
...
20250730-revert-PR9000
2025-07-30 16:59:19 -06:00
JacobBarthelmeh
6a01122c47
add static memory doxygen comments for APIs
2025-07-30 14:50:44 -06:00
Daniel Pouzzner
26806cda7b
Revert "Support importing seed of ML-DSA key"
...
This reverts commit a82d1a6b12 .
2025-07-30 15:39:57 -05:00
Daniel Pouzzner
f6437d3072
Revert "Add test data"
...
This reverts commit 778dcbaafb .
2025-07-30 15:39:55 -05:00
Daniel Pouzzner
d0bf9c4b3c
Revert "Disable exporting dilithium DER tests without WOLFSSL_ASN_TEMPLATE"
...
This reverts commit bbcdfe92e0 .
2025-07-30 15:39:53 -05:00
Daniel Pouzzner
40646964b4
Revert "Follow copilot review"
...
This reverts commit 189ba201f3 .
2025-07-30 15:39:47 -05:00
JacobBarthelmeh
46347173b2
Merge pull request #9034 from holtrop/allow-pkcs7-without-x963-kdf
...
Allow building with HAVE_PKCS7 set and HAVE_X963_KDF unset
2025-07-30 10:05:09 -06:00
JacobBarthelmeh
09dd519764
Merge pull request #9043 from holtrop/fix-unit-test-coverity-defect
...
Fix unit test coverity defect in test_wc_PKCS7_SetAESKeyWrapUnwrapCb()
2025-07-30 09:59:39 -06:00
Josh Holtrop
ccb463dd1d
Fix unit test coverity defect in test_wc_PKCS7_SetAESKeyWrapUnwrapCb()
2025-07-30 10:37:28 -04:00
Juliusz Sosinowicz
42e2dd9990
Zero sha->buffer
...
msan reported it as an uninitialized buffer
2025-07-30 14:16:52 +02:00
JacobBarthelmeh
a1e2ba2cd3
Merge pull request #9036 from kareem-wolfssl/zd20239
...
Fix size used by signature context struct with WOLFSSL_NO_MALLOC.
2025-07-29 17:13:34 -06:00
Sean Parkinson
d7f85c533b
Merge pull request #9038 from JacobBarthelmeh/tcp
...
remove QEMU test host name lookup feature
2025-07-30 08:40:39 +10:00
JacobBarthelmeh
36912c3af8
Merge pull request #9000 from kojiws/import_mldsa_seed_pkcs8
...
Import ML-DSA's seed from PKCS8 file
2025-07-29 16:02:36 -06:00
Kareem
f130a9d44d
Alias MAX_SIG_SZ to MAX_ENCODED_SIG_SZ for backwards compatibility.
2025-07-29 13:58:35 -07:00
Josh Holtrop
df7e105fb7
Allow building with HAVE_PKCS7 set and HAVE_X963_KDF unset
2025-07-29 11:46:44 -04:00
JacobBarthelmeh
26f4c968df
Merge pull request #9032 from holtrop/allow-pkcs7-without-aes-keywrap
...
Allow building with HAVE_PKCS7 set and HAVE_AES_KEYWRAP unset
2025-07-29 09:44:07 -06:00
JacobBarthelmeh
9aace48189
remove QEMU test host name lookup feature
2025-07-28 17:04:33 -06:00
Koji Takeda
189ba201f3
Follow copilot review
2025-07-29 07:15:32 +09:00
Josh Holtrop
26a4ea93eb
Allow building with HAVE_PKCS7 set and HAVE_AES_KEYWRAP unset
2025-07-28 12:40:35 -04:00
Koji Takeda
bbcdfe92e0
Disable exporting dilithium DER tests without WOLFSSL_ASN_TEMPLATE
2025-07-28 21:46:28 +09:00
Koji Takeda
778dcbaafb
Add test data
2025-07-28 21:46:28 +09:00
Koji Takeda
a82d1a6b12
Support importing seed of ML-DSA key
2025-07-28 21:46:28 +09:00
philljj
cc2f7927ec
Merge pull request #9035 from douzzer/20250725-wc_linuxkm_relax_long_loop
...
20250725-wc_linuxkm_relax_long_loop
2025-07-26 09:22:00 -05:00
Daniel Pouzzner
b0f6829614
20250725-wc_linuxkm_relax_long_loop: improvements from peer review: fix, clarify, and extend comments, improve indentation, and snip out a stray redundant preprocessor definition.
2025-07-26 08:27:43 -05:00
Kareem
5b888f809f
Fix size used by signature context struct. This matches the size used by sigCpy/sigSz when building without WOLFSSL_NO_MALLOC.
2025-07-25 15:50:38 -07:00
Daniel Pouzzner
77dccc0c32
linuxkm:
...
* add wc_linuxkm_check_for_intr_signals(), wc_linuxkm_relax_long_loop(),
WC_CHECK_FOR_INTR_SIGNALS(), WC_RELAX_LONG_LOOP(), SAVE_NO_VECTOR_REGISTERS(),
RESTORE_NO_VECTOR_REGISTERS(), and new error code INTERRUPTED_E ("Process
interrupted");
* update the no-asm remaps in the PK implementations to use
SAVE_NO_VECTOR_REGISTERS() and RESTORE_NO_VECTOR_REGISTERS(), so that inner
loops in them are always covered by the new logic.
2025-07-25 15:56:48 -05:00
Anthony Hu
c7e054a7a7
Rename ML-KEM hybrids to match IETF Draft.
2025-07-25 13:27:26 -04:00
David Garske
c347f75b3c
Merge pull request #9029 from holtrop/extract-kari-rid
...
Add wc_PKCS7_GetEnvelopedDataKariRid()
2025-07-25 09:04:11 -07:00
Josh Holtrop
804c4f20b5
Explicitly initialize some unit test variables to avoid warnings
2025-07-24 18:51:58 -04:00
Josh Holtrop
1226dedeb8
Check that we don't run out of space for the RID structure
2025-07-24 15:52:34 -04:00
Josh Holtrop
71bd9e2f6e
Make unit test more resilient to earlier errors
2025-07-24 15:46:01 -04:00
Josh Holtrop
6309b241cd
Fix some clang-tidy warnings in unit test
2025-07-24 15:42:55 -04:00
David Garske
a06268f705
Merge pull request #9010 from miyazakh/sce_tlsproperties_uc
...
Make properties related to Renesas FSP Security Module TLS hidden for FSP SM context
2025-07-24 12:35:56 -07:00
David Garske
2db1669713
Merge pull request #8988 from JacobBarthelmeh/visibility
...
remove WOLFSSL_API in source code when already used in header file
2025-07-24 11:00:55 -07:00
David Garske
e4a9ffd00e
Merge pull request #9031 from danielinux/fix-regression-rsa-verify-only
...
Fix warning with WOLFSSL_RSA_VERIFY_ONLY
2025-07-24 10:29:02 -07:00
JacobBarthelmeh
c25efcee92
Merge pull request #9028 from dgarske/md5_sha1
...
Fixes for building with MD5 and SHA1 to support Hash `WC_HASH_TYPE_MD5_SHA`
2025-07-24 10:41:22 -06:00
Josh Holtrop
cf843c8b82
Add wc_PKCS7_GetEnvelopedDataKariRid()
...
Allow access to recipient ID before attempting to decrypt content.
2025-07-24 11:15:30 -04:00
Daniele Lacamera
09de113145
Fix warning with WOLFSSL_RSA_VERIFY_ONLY
...
PR #8830 introduces a warning when WOLFSSL_NO_CT_OPS is selected.
However, in WOLFSSL_RSA_VERIFY_ONLY mode this is enforced in
wolfssl/wolfcrypt/settings.h:4035, forcing this warning to appear when
this configuration is used.
This PR takes into account the special case, allowing WOLFSSL_NO_CT_OPS
when WOLFSSL_RSA_VERIFY_ONLY, and removing the warning.
2025-07-24 16:13:00 +02:00
philljj
6750c29e67
Merge pull request #9027 from douzzer/20250723-linuxkm-fixes-and-testing-workflow
...
20250723-linuxkm-fixes-and-testing-workflow
2025-07-23 22:43:51 -05:00
David Garske
6aabc73845
Merge pull request #9018 from holtrop/decode-skp
...
Add API to decode SymmetricKeyPackage and OneSymmetricKey CMS objects
2025-07-23 16:01:58 -07:00
David Garske
44eba446ec
Merge pull request #9002 from holtrop/aes-key-wrap-callbacks
...
Add callback functions for custom AES key wrap/unwrap operations
2025-07-23 16:01:49 -07:00
David Garske
551ff3f1b6
Fixes for building with MD5 and SHA1 to support Hash WC_HASH_TYPE_MD5_SHA. ZD 20269.
2025-07-23 15:59:08 -07:00
David Garske
e1b3c43a2b
Merge pull request #8987 from gojimmypi/pr-espressif-allocators
...
Add wolfSSL_GetAllocators PSRAM support for Espressif ESP32
2025-07-23 15:33:53 -07:00
Daniel Pouzzner
5e57ec5c93
linuxkm/Kbuild: if ENABLED_LINUXKM_PIE, disable KASAN and UBSAN, to avoid external references (__ubsan_handle_out_of_bounds() etc.).
2025-07-23 17:30:14 -05:00
David Garske
c261bf4452
Merge pull request #9006 from rlm2002/zd20212
...
Coverity fixes for Zendesk issue
2025-07-23 15:29:20 -07:00
Daniel Pouzzner
ca6a12769f
linuxkm/linuxkm_wc_port.h: additional fixes for version gates;
...
.github/workflows/linuxkm.yml: add a second scenario with --enable-linuxkm-pie.
2025-07-23 16:57:24 -05:00
Daniel Pouzzner
b7b0ab6dbf
src/tls.c: fix double free just added to TLSX_KeyShare_GenPqcKeyClient().
2025-07-23 16:18:22 -05:00
Daniel Pouzzner
53de4a582e
add .github/workflows/linuxkm.yml;
...
linuxkm/Makefile: add support for FORCE_NO_MODULE_SIG.
2025-07-23 14:43:33 -05:00
Daniel Pouzzner
a447a991b0
linuxkm/Kbuild: add KERNEL_EXTRA_CFLAGS_REMOVE;
...
linuxkm/linuxkm_wc_port.h: fix version threshold for HAVE_KVREALLOC (6.12.0, not 6.11.0), and add manual overrides.
2025-07-23 14:31:52 -05:00
Daniel Pouzzner
8d7009e9de
src/tls.c: in TLSX_KeyShare_GenPqcKeyClient(), add smallstack coverage to !WOLFSSL_TLSX_PQC_MLKEM_STORE_OBJ code paths.
2025-07-23 12:02:07 -05:00
Daniel Pouzzner
5360738351
wolfssl/internal.h: don't gate in prototype for sockAddrEqual() if defined(WOLFSSL_NO_SOCK).
2025-07-23 11:17:31 -05:00
Josh Holtrop
2f2f999657
Rework to remove early function returns
2025-07-22 20:35:28 -04:00
Josh Holtrop
0d48911ae4
Update style per code review comments
2025-07-22 20:30:44 -04:00
Josh Holtrop
86d7d42eb6
Comment test ASN DER sequences
2025-07-22 20:29:44 -04:00
Josh Holtrop
7762fa9b14
Update style per code review comments
2025-07-22 20:09:55 -04:00
philljj
65126352a0
Merge pull request #9025 from douzzer/20250721-wolfssl_linuxkm_pie_redirect_table-direct
...
20250721-wolfssl_linuxkm_pie_redirect_table-direct
2025-07-22 18:08:11 -05:00
Hideki Miyazaki
5e77253577
Addressed code review comments
2025-07-23 07:44:30 +09:00
Daniel Pouzzner
6043274d96
linuxkm/Kbuild: revert change to base PIE_FLAGS -- we need -fno-stack-protector to avoid compiler-generated references to __stack_chk_fail.
2025-07-22 16:45:06 -05:00
David Garske
c7bc6e834e
Merge pull request #8996 from lealem47/match_ipv6
...
Add logic to match IPv6 domain addresses
2025-07-22 13:42:15 -07:00
Josh Holtrop
13fb6b83cd
Update style per code review comments
2025-07-22 16:38:13 -04:00
Josh Holtrop
27f0ef8789
Combine AES key wrap/unwrap callbacks
2025-07-22 16:34:37 -04:00
Daniel Pouzzner
c26f6ded14
linuxkm/linuxkm_wc_port.h: use more flexible logic to define WC_LKM_INDIRECT_SYM(), allowing various overrides and orthogonalizing the definitions proper, and add explanatory comments.
2025-07-22 14:40:45 -05:00
Josh Holtrop
7bcb346dd7
Remove early function returns per code review comments
2025-07-22 14:58:26 -04:00
Josh Holtrop
15c8730ef7
Use wc_ prefix for IndexSequenceOf()
2025-07-22 14:50:42 -04:00
Josh Holtrop
77bace5010
Update style per code review comments
2025-07-22 14:47:22 -04:00
gojimmypi
97c2e9f973
Add wolfSSL_GetAllocators PSRAM support for Espressif ESP32
2025-07-22 11:34:47 -07:00
David Garske
357b624ca5
Merge pull request #9024 from JacobBarthelmeh/mldsa
...
fix mldsa test case for buffer size and expire date
2025-07-22 11:04:41 -07:00
Ruby Martin
29288640ab
add additional check so dead code can be reached
2025-07-22 10:48:06 -06:00
David Garske
b0fd0296f3
Merge pull request #9026 from JacobBarthelmeh/readme
...
fix changelog formatting
2025-07-22 09:34:44 -07:00
Ruby Martin
01fd36b840
set a->length to 0 if old data is not kept
2025-07-22 10:33:12 -06:00
Lealem Amedie
22b01bcda9
Remove unnecessary memset
2025-07-22 10:05:36 -06:00
JacobBarthelmeh
3759c6f1a1
fix changelog formatting
2025-07-22 09:21:26 -06:00
Ruby Martin
828b9b7024
remove mac_alg check, mac_alg is always no_mac on subsequent iterations
2025-07-22 08:49:26 -06:00
Ruby Martin
42b80878d9
str_len check includes any value less than 0
2025-07-22 08:49:26 -06:00
Ruby Martin
dc345553df
wrap res assignment in else statement
2025-07-22 08:49:26 -06:00
Josh Holtrop
aa986a2b24
Update doxygen comment style per code review comments
2025-07-22 08:27:00 -04:00
Josh Holtrop
e03fc6858b
Update Doxygen comment style per code review comments
2025-07-22 08:24:22 -04:00
Josh Holtrop
525f1cc39e
Update style per code review comments
2025-07-22 08:19:01 -04:00
Sean Parkinson
8f00fc2594
Merge pull request #8890 from kareem-wolfssl/zd20022
...
Allow larger pathLen values in Basic Constraints.
2025-07-22 17:16:27 +10:00
Sean Parkinson
cd7256ae63
Merge pull request #8979 from anhu/abort_on_bad_legacy
...
Abort TLS connection if legacy version field is TLS 1.3 or higher
2025-07-22 17:12:39 +10:00
Sean Parkinson
1f72866489
Merge pull request #8993 from miyazakh/tsip_tlsproperties_uc
...
Make properties related to TLS handshake hidden for TSIP TLS user-context structure
2025-07-22 17:05:44 +10:00
Sean Parkinson
6c847b1870
Merge pull request #9013 from ColtonWilley/fix_cryptocb_rsa_pad_inline
...
Set out ptr properly for RSA pad crypto cb inline
2025-07-22 16:47:06 +10:00
Sean Parkinson
21f283c143
Merge pull request #9008 from gojimmypi/pr-wolfssl_user_io
...
Improve WOLFSSL_USER_IO defaults
2025-07-22 16:37:59 +10:00
Sean Parkinson
7417958649
Merge pull request #9015 from philljj/fix_dual_alg_build
...
dual alg certs: fix dual alg certs build, and asn cleanup.
2025-07-22 16:26:41 +10:00
Sean Parkinson
95768038b9
Merge pull request #9019 from ribes96/word64_literal
...
wolfcrypt test: Fix build on 32 bit machines
2025-07-22 16:23:02 +10:00
Sean Parkinson
0c4c156893
Merge pull request #9020 from ribes96/oldgcc_uninitialized
...
Avoid bogus warning on uninitialized variables on old versions of GCC
2025-07-22 16:22:00 +10:00
Sean Parkinson
f034f09bb4
Merge pull request #9021 from ribes96/fix_noshadow_overwrite
...
Support CFLAGS="-Wno-shadow"
2025-07-22 16:21:07 +10:00
Sean Parkinson
f1175043f3
Merge pull request #9022 from lealem47/check_rsa_u
...
Check that u value isn't zero in RsaFunctionPrivate
2025-07-22 16:19:12 +10:00
Daniel Pouzzner
0495f2cc20
linuxkm/linuxkm_wc_port.h: add WC_LKM_INDIRECT_SYM() macro; on x86, use wolfssl_linuxkm_pie_redirect_table directly for indirect calls from PIE container, otherwise use wolfssl_linuxkm_get_pie_redirect_table() to avoid e.g. R_AARCH64_LD64_GOT_LO12_NC relocations;
...
linuxkm/Kbuild: remove -fno-stack-protector from default PIE_FLAGS.
2025-07-21 19:34:00 -05:00
JacobBarthelmeh
98c70fb77e
fix mldsa test case for buffer size and expire date
2025-07-21 15:15:31 -06:00
Lealem Amedie
8df20d6966
Check that u value isn't zero in RsaFunctionPrivate
2025-07-21 10:45:43 -06:00
Lealem Amedie
b306e88d1a
Guard for WOLFSSL_USER_IO case
2025-07-21 10:06:19 -06:00
Lealem Amedie
f9afdfd8e2
Don't need to initialize with {0}
2025-07-21 10:06:19 -06:00
Lealem Amedie
90bd374c16
Add logic to match IPv6 domain addresses
2025-07-21 10:06:19 -06:00
Albert Ribes
6f8e0f128a
Support CFLAGS="-Wno-shadow"
...
Avoid appending "-Wshadow" in the end of compiler flags if the user
provided CFLAGS="-Wno-shadow"
2025-07-21 12:34:39 +02:00
Albert Ribes
b2463f167c
Avoid bogus warning on uninitialized variables on old versions of GCC
...
gcc-4.3.3 erroneously complains that some variables may be used
uninitialized. Silence it assigning NULL on declaration, as is already
done with many other variables.
2025-07-21 10:57:50 +02:00
Albert Ribes
2e25c65129
wolfcrypt test: Fix build on 32 bit machines
...
Declare a 64 bit variable using W64LIT to avoid warnings on 32 bit
machines
2025-07-21 10:34:19 +02:00
Josh Holtrop
06d86af67c
Add API to decode SymmetricKeyPackage and OneSymmetricKey CMS objects
2025-07-19 18:28:06 -04:00
jordan
8e46687223
dual alg certs: add missing WC_ENABLE_ASYM_KEY_IMPORT guard.
2025-07-18 09:30:17 -05:00
Hideki Miyazaki
7a03b9fea6
fix trailing whitespaces
2025-07-18 07:54:45 +09:00
Hideki Miyazaki
70587dd2d5
Addressed code review by devin
2025-07-18 07:51:04 +09:00
David Garske
decea12e22
Merge pull request #9012 from JacobBarthelmeh/release
...
prepare for release 5.8.2
2025-07-17 14:59:24 -07:00
jordan
e571988059
dual alg certs: fix dual alg certs build, and asn cleanup.
2025-07-17 15:15:11 -05:00
Colton Willey
f3ee192a96
Set out ptr properly for RSA pad crypto cb inline
2025-07-17 12:01:39 -07:00
JacobBarthelmeh
c34e6ab8d9
prepare for release 5.8.2
2025-07-17 10:26:19 -06:00
JacobBarthelmeh
fa1842e56d
Merge pull request #9011 from douzzer/20250717-linuxkm-include-am
...
20250717-linuxkm-include-am
2025-07-17 08:56:40 -06:00
Daniel Pouzzner
c8a9e9ea12
linuxkm/include.am: add linuxkm/wolfcrypt.lds to EXTRA_DIST.
2025-07-17 08:40:55 -05:00
Hideki Miyazaki
ba358b8fb8
Sanity check before free
2025-07-17 18:51:57 +09:00
Hideki Miyazaki
59659ef8fb
fix long line and trailing whitespaces
2025-07-17 18:26:55 +09:00
Hideki Miyazaki
cc123d7c3a
Make properties related to SCE TLS hidden
...
- Fix RSA Crypt callback
- Eliminate WOLFSSL_LOCAL
2025-07-17 18:16:40 +09:00
philljj
8bde512676
Merge pull request #9007 from douzzer/20250715-linuxkm-portability-fixes
...
20250715-linuxkm-portability-fixes
2025-07-16 21:02:55 -05:00
gojimmypi
a08b93347f
Revised sockets for USE_WOLFSSL_IO, USE_WOLFSSL_IO
2025-07-16 15:18:14 -07:00
Daniel Pouzzner
8d1289c1d7
linuxkm/Kbuild: --rename-section .rodata.cst16=.rodata.wolfcrypt
2025-07-16 16:54:20 -05:00
gojimmypi
66650a95d8
Improve WOLFSSL_USER_IO defaults
2025-07-16 12:04:05 -07:00
Daniel Pouzzner
01313cc0c8
linuxkm/x86_vector_register_glue.c:
...
* refactor the save_vector_registers_x86() algorithm to depend directly on preempt_count(), and use local_bh_enable() and preempt_disable() directly, to mitigate glitchiness around irq_fpu_usable() and crypto_simd_usable();
* eliminate the WC_FPU_ALREADY_FLAG kludge.
* improve the error and warning messages, and add some additional checks and messages for unexpected states; add VRG_PR_ERR_X and VRG_PR_WARN_X for pr_*_once() semantics on regular builds, but unlimited messages when WOLFSSL_LINUXKM_VERBOSE_DEBUG.
linuxkm/linuxkm_wc_port.h and linuxkm/module_hooks.c:
* move the spinlock-based implementation of wc_LockMutex() from linuxkm_wc_port.h to module_hooks.c, due to numerous stuboorn direct external symbol references;
* extensively refactor the kernel header #include strategy, keeping many more superfluous headers out of __PIE__ objects, and fixing unavoidable static header functions with grafted __always_inline attributes;
* add version exceptions for RHEL 9.5.
linuxkm/Kbuild:
* on x86 with CONFIG_MITIGATION_{RETPOLINE,RETHUNK}, use inline rethunks rather than none;
* refactor check for "Error: section(s) missed by containerization." using `readelf --sections --syms`, for 100% coverage, more informative error output, and suppression of false positives on printk-related cruft;
configure.ac and linuxkm/lkcapi_sha_glue.c: use LINUXKM_LKCAPI_[DONT_]REGISTER_{SHA,HMAC}_ALL to represent --enable-linuxkm-lkcapi-register=[-]all-{sha,hmac}, which allows alg families (notably SHA1) to be masked out piecemeal;
linuxkm/lkcapi_rsa_glue.c: in linuxkm_test_pkcs1pad_driver(), mitigate unused args when LINUXKM_AKCIPHER_NO_SIGNVERIFY.
2025-07-16 13:09:03 -05:00
JacobBarthelmeh
2c90d1585a
Merge pull request #8897 from anhu/compat_additions
...
Compatibility layer additions for X.509 extensions and RSA PSS
2025-07-15 10:52:33 -06:00
Anthony Hu
c341a9fc05
FIPS > 2
2025-07-15 07:59:20 -04:00
JacobBarthelmeh
e06f1bbf02
Merge pull request #9005 from douzzer/20250714-linuxkm-MODULE_LICENSE
...
20250714-linuxkm-MODULE_LICENSE
2025-07-14 17:23:22 -06:00
JacobBarthelmeh
9430c8a5a1
Merge pull request #9003 from embhorn/cov_531298
...
Fix blake2b_final coverity reports
2025-07-14 16:20:19 -06:00
Daniel Pouzzner
049e88b525
linuxkm/module_hooks.c: use MODULE_LICENSE("GPL").
2025-07-14 16:30:13 -05:00
Josh Holtrop
af3296a836
wc_PKCS7_KeyWrap(): mark pointers as to const and check for NULL
2025-07-14 17:28:23 -04:00
Daniel Pouzzner
2c341a5806
Merge pull request #8990 from JacobBarthelmeh/license
...
updating license from GPLv2 to GPLv3
(linuxkm tweak to `MODULE_LICENSE("GPL")` to follow.)
2025-07-14 16:14:39 -05:00
JacobBarthelmeh
91321fccec
Merge pull request #8992 from douzzer/20250710-WC_ASN_RUNTIME_DATE_CHECK_CONTROL
...
20250710-WC_ASN_RUNTIME_DATE_CHECK_CONTROL
2025-07-14 15:08:35 -06:00
Eric Blankenhorn
9c2ea12563
Fix blake2 final coverity issue
2025-07-14 15:04:15 -05:00
Josh Holtrop
429ccd5456
Add callback functions for custom AES key wrap/unwrap operations
2025-07-14 15:58:14 -04:00
Eric Blankenhorn
efdca85aec
Fix blake2 final coverity issue
2025-07-14 14:53:37 -05:00
philljj
1f71e6d246
Merge pull request #8998 from douzzer/20250712-linuxkm-all-aes-sha-hmac
...
20250712-linuxkm-all-aes-sha-hmac
2025-07-14 14:19:09 -05:00
philljj
bbc5dc528b
Merge pull request #9001 from douzzer/20250714-linuxkm-fix-page-flags-h
...
20250714-linuxkm-fix-page-flags-h
2025-07-14 12:59:26 -05:00
Daniel Pouzzner
80c9212dd9
linuxkm/linuxkm_wc_port.h, linuxkm/lkcapi_aes_glue.c, configure.ac: fix LKCAPI on kernel 5.4 (sunrise version for LKCAPI), and add all-aes, all-sha, all-hmac, and their negations, to --enable-linuxkm-lkcapi-register.
2025-07-14 12:39:41 -05:00
Daniel Pouzzner
ee3b459e16
linuxkm/linuxkm_wc_port.h: refactor the fix for folio_flags()/const_folio_flags() text segment spam -- inhibiting inclusion of linux/page-flags.h breaks on some kernel configs.
2025-07-14 10:27:35 -05:00
JacobBarthelmeh
99d26f0347
Merge pull request #8977 from BridgerVoss/new_settings
...
FREESCALE forced algorithm HAVE_ECC moved to IDE/MQX/user_settings.h
2025-07-14 09:05:56 -06:00
Hideki Miyazaki
ec252a73e2
fix whitespace and long line
2025-07-12 10:26:28 +09:00
Hideki Miyazaki
eb8a3afe38
Addressed code review comments
2025-07-12 09:49:09 +09:00
Anthony Hu
dc3209b797
Add macro to .wolfssl_known_macro_extras
2025-07-11 14:59:43 -04:00
Kareem
9fa1d2e75f
Enforce WOLFSSL_MAX_PATH_LEN for ASN original as well.
2025-07-11 11:53:33 -07:00
Anthony Hu
1a0a3283a0
Add a test.
2025-07-11 14:32:47 -04:00
philljj
607d5d798b
Merge pull request #8994 from douzzer/20250711-linuxkm-distro-fix
...
20250711-linuxkm-distro-fix
2025-07-11 13:01:51 -05:00
Daniel Pouzzner
d90394efa6
wolfcrypt/src/asn.c and wolfssl/wolfcrypt/asn.h: add
...
WC_ASN_RUNTIME_DATE_CHECK_CONTROL, with accessors wc_AsnSetSkipDateCheck()
(WOLFSSL_TEST_VIS) and wc_AsnGetSkipDateCheck() (WOLFSSL_LOCAL). use this to
permafix test_wolfSSL_CRL_duplicate_extensions() in api.c, which has an
expiring-soon handcrafted certificate in it.
2025-07-11 11:25:25 -05:00
David Garske
70bdd9f990
Merge pull request #8989 from rlm2002/zd20212
...
xmemset rng before test runs
2025-07-11 08:58:30 -07:00
David Garske
a36f9085c1
Fix for compat wolfSSL_RSA_sign and wolfSSL_RSA_verify to support RSA PSS with custom salt and mgf1 hash type. Adds compat API's for i2d_PrivateKey_bio , BN_ucmp and X509v3_get_ext_by_NID. ZD 20059
2025-07-11 08:51:51 -07:00
Daniel Pouzzner
0001bf7983
linuxkm/patches/: in regen-patches.sh, structure the pathnames to mollify kernel scripts/checkpatch.pl;
...
tweak WOLFSSL_LINUXKM_HAVE_GET_RANDOM_CALLBACKS-6v15.patch (mostly whitespace) to mollify scripts/checkpatch.pl.
2025-07-11 10:42:43 -05:00
Daniel Pouzzner
1e3966f06d
linuxkm/include.am: add kernel patches to EXTRA_DIST.
2025-07-11 10:42:43 -05:00
Hideki Miyazaki
c4a178f029
Remove trailing whitespace
2025-07-11 22:12:49 +09:00
Hideki Miyazaki
e9def03585
Null check before accessing instance
2025-07-11 17:48:36 +09:00
Hideki Miyazaki
0a0b9a3c24
Make properties related to TLS handshake hidden for TSIP TLS user context structure
2025-07-11 14:25:06 +09:00
JacobBarthelmeh
388eea3cf2
Merge pull request #8976 from holtrop/decode-encrypted-key-package
...
Add wc_PKCS7_DecodeEncryptedKeyPackage()
2025-07-10 17:08:06 -06:00
JacobBarthelmeh
01cd91cbea
removing more locations of WOLFSSL_API used with function implementations
2025-07-10 16:44:28 -06:00
Sean Parkinson
046e46a67f
Merge pull request #8825 from kareem-wolfssl/zd19911
...
Fix parsing RPK with no parameters.
2025-07-11 08:36:55 +10:00
David Garske
8d68977e33
Merge pull request #8985 from sebastian-carpenter/GH-issue-8951
...
improper access of sp_int_minimal using sp_int
2025-07-10 15:21:20 -07:00
Ruby Martin
e65647faa8
xmemset rng before test runs
2025-07-10 16:17:53 -06:00
David Garske
4d4228caa1
Merge pull request #8815 from kareem-wolfssl/zd19929
...
Fix wolfSSL_BIO_new_connect's handling of IPV6 addresses.
2025-07-10 15:17:39 -07:00
JacobBarthelmeh
629c5b4cf6
updating license from GPLv2 to GPLv3
2025-07-10 16:11:36 -06:00
Kareem
362f0a2cfd
Ensure only one of the RPK algorithm parameters are set.
2025-07-10 12:43:14 -07:00
JacobBarthelmeh
13b8a972ea
remove WOLFSSL_API in source code when already used in header file for function decleration
2025-07-10 13:40:27 -06:00
Josh Holtrop
3ce8c6e4fa
Remove WOLFSSL_API for wc_PKCS7_DecodeEncryptedKeyPackage() in source file
2025-07-10 15:29:31 -04:00
Josh Holtrop
f776c95e54
Remove do/while(0) loop in wc_PKCS7_DecodeEncryptedKeyPackage(); use if-else if chain
2025-07-10 15:25:57 -04:00
Kareem
f942990113
Fix building unit tests with --enable-rpk --disable-rsa.
...
Exact configure line used:
./configure --enable-kyber --enable-mlkem --enable-dilithium --enable-dtls --enable-dtls13 --enable-dtls-frag-ch --enable-debug --enable-debug-trace-errcodes \
CFLAGS="-DHAVE_RPK -DWOLFSSL_DER_LOAD -DWOLFSSL_LOGGINGENABLED_DEFAULT=1" --disable-rsa
2025-07-10 12:03:18 -07:00
Kareem
2df674bd59
Correct RPK parsing. As per RFC7250 section 3, the algorithm parameters are optional.
2025-07-10 12:03:18 -07:00
David Garske
047d1bd69f
Merge pull request #8986 from kareem-wolfssl/pskYml
...
Fix missing comma in psk.yml
2025-07-10 11:50:08 -07:00
Kareem
bfacbf9764
Update ASN original to also allow larger pathLen values in Basic Constraints.
2025-07-10 11:47:47 -07:00
philljj
c7ff47d5ee
Merge pull request #8984 from douzzer/20250710-linuxkm-crng-fixes
...
20250710-linuxkm-crng-fixes
2025-07-10 13:32:17 -05:00
Kareem
aa3a325add
Fix missing comma in psk.yml
2025-07-10 10:52:11 -07:00
Kareem
f0459eb1cf
Allow larger pathLen values in Basic Constraints.
2025-07-10 10:37:06 -07:00
Kareem
c9d451e857
Fix wolfSSL_BIO_new_connect's handling of IPV6 addresses.
2025-07-10 10:33:46 -07:00
Sebastian Carpenter
a00cfcb55f
improper access of sp_int_minimal using sp_int
...
related thread: https://bugzilla.redhat.com/show_bug.cgi?id=2047439
also found sp_uint8 that was not updated to sp_sign_t
2025-07-10 10:42:30 -06:00
Daniel Pouzzner
b4137fe2f8
linuxkm/lkcapi_sha_glue.c: add interruptibility and additional relaxation where possible, and fix a leaked lock scenario, in get_drbg_n(), wc_linuxkm_drbg_seed(), wc_mix_pool_bytes(), and wc_crng_reseed();
...
wolfcrypt/src/asn.c: add a couple static attributes missed on the previous round of fixups.
2025-07-10 10:59:57 -05:00
philljj
ed6d189f1a
Merge pull request #8980 from douzzer/20250706-linuxkm-fixes
...
20250706-linuxkm-fixes
2025-07-10 10:34:59 -05:00
Anthony Hu
4bd2835cf1
Change suggested by SparkiDev
2025-07-10 10:40:12 -04:00
Daniel Pouzzner
ae48ee408e
Merge pull request #8983 from philljj/linuxkm_make_rsa_again
...
Linuxkm make rsa again
2025-07-10 09:29:29 -05:00
Josh Holtrop
6d51b73626
Shorten some wc_PKCS7_DecodeEncryptedKeyPackage() comment lines to less than 80 characters
2025-07-10 08:10:59 -04:00
Josh Holtrop
3f65846e67
Document BAD_FUNC_ARG return value for wc_PKCS7_DecodeEncryptedKeyPackage()
2025-07-10 08:07:32 -04:00
Sean Parkinson
783ab14afb
Merge pull request #8982 from dgarske/x509_ref
...
Fix possible memory leak with X509 reference counter when using x509small
2025-07-10 20:37:57 +10:00
Daniel Pouzzner
f49e583721
linuxkm/Kbuild: skip "section(s) missed by containerization" test unless KERNEL_ARCH_X86;
...
linuxkm/linuxkm_wc_port.h: fixes for legacy kernels, particularly: when building TLS stack (!WOLFCRYPT_ONLY), use the best heap with a functioning realloc(), else use kvmalloc() and friends if available, even if kvrealloc() is unavailable. also, provide for XMALLOC_USER and XMALLOC_OVERRIDE;
linuxkm/lkcapi_glue.c: recognize the new CONFIG_CRYPTO_SELFTESTS_FULL alongside the old CONFIG_CRYPTO_MANAGER_EXTRA_TESTS;
linuxkm/linuxkm_memory.c: restore my__show_free_areas() in case it's still needed.
2025-07-10 00:57:51 -05:00
jordan
e73fa74f14
linuxkm: misc cleanup.
2025-07-09 21:43:02 -05:00
jordan
0aacffd6a2
linuxkm rsa: retry wc_MakeRsaKey if not prime.
2025-07-09 20:55:50 -05:00
David Garske
b2143a815f
Merge pull request #8965 from SparkiDev/ppc32_sha256_spe
...
PPC32 ARM ASM SHA-256: SPE impl, tidy up original
2025-07-09 17:00:26 -07:00
David Garske
2b07b9143b
Fix issue with X509 reference counter with --enable-opensslextra=x509small or OPENSSL_EXTRA_X509_SMALL. Thank you Mohre.
2025-07-09 16:51:48 -07:00
Sean Parkinson
98adb330ef
Merge pull request #8981 from dgarske/mldsa
...
Fix build issue with ML-DSA 44 only
2025-07-10 09:41:36 +10:00
David Garske
7ba6f836c4
Merge pull request #8972 from SparkiDev/sp_int_8_bit_fix
...
SP int: fix 8 bit words and sp_clamp_ct
2025-07-09 16:30:33 -07:00
David Garske
c3518e473b
Merge pull request #8971 from SparkiDev/psk_build_fix
...
API test ASN: must not have NO_ASN defined
2025-07-09 16:30:22 -07:00
David Garske
b0a5d2fdf0
Merge pull request #8969 from SparkiDev/alpn_gcc_Os_fix
...
ALPN: don't use BIO
2025-07-09 16:30:12 -07:00
David Garske
cf35abccb8
Merge pull request #8963 from SparkiDev/sp_int_type_fix
...
CodeQL: o is larger type and could cause issues
2025-07-09 16:30:01 -07:00
David Garske
ae19c55182
Merge pull request #8966 from SparkiDev/arm32_aes_asm_fixup_bne
...
ARM 32-bit ASM AES: fixup 32-bit code to not use B.EQ
2025-07-09 16:29:46 -07:00
Daniel Pouzzner
01e8815762
wolfssl/wolfcrypt/settings.h: add #define WOLFSSL_NO_PUBLIC_FFDHE and #undef HAVE_PUBLIC_FFDHE to WOLFSSL_LINUXKM setup to avoid .data.rel.ro.local functions in dh.c;
...
linuxkm/linuxkm_wc_port.h: only use kvrealloc() on kernel >=6.11 -- the version in 5.15-6.10 is incompatible (oldsize arg). also, restore use of kvmalloc on 4.12+, but with XREALLOC undefined, suitable for cryptonly modules; add #include <linux/sched.h> even on __PIE__ objects to make cond_sched() available;
wolfcrypt/src/asn.c: harmonize gate around definitions of BEGIN_DSA_PRIV and END_DSA_PRIV;
wolfcrypt/src/asn.c: in EccSpecifiedECDomainDecode(), work around "const char[]" types in WOLFSSL_ECC_CURVE_STATIC struct ecc_set_type on FIPS <6;
wolfcrypt/src/asn.c, wolfcrypt/src/wc_xmss.c, wolfssl/wolfcrypt/wc_lms.h: add comments to new WOLFSSL_NAMES_STATIC slots explaining where the size comes from.
2025-07-09 18:22:18 -05:00
Daniel Pouzzner
7c6afeb106
add linuxkm/wolfcrypt.lds module linker script, explicitly grouping wolfcrypt sections together;
...
linuxkm/Kbuild: add linker script flag, containerize several more previously-missed ELF sections, and add a test verifying no sections were missed;
linuxkm/linuxkm_memory.c: remove obsolete lkm_realloc() shim and unneeded my__show_free_areas() wrapper;
linuxkm/linuxkm_wc_port.h: add new mapping from realloc() to native kvrealloc(), and gate out a slew of headers when __PIE__ to avoid polluting wolfCrypt objects with various unneeded header-implemented functions with associated awkward symbols references;
linuxkm/lkcapi_glue.c: harmonize gate for REGISTER_ALG_OPTIONAL();
linuxkm/module_hooks.c: add "ERROR:" prefixes on pr_err()s; add wc_RunAllCast_fips() at shutdown to send confidence verification to the kernel log; remove section bounds checks now that layout is unreliable;
wolfssl/wolfcrypt/settings.h: for WOLFSSL_LINUXKM && HAVE_LINUXKM_PIE_SUPPORT, #define WOLFSSL_ECC_CURVE_STATIC and WOLFSSL_NAMES_STATIC;
wolfssl/wolfcrypt/types.h: refactor the typedef for wcchar from a pointer to a char[];
wolfcrypt/src/wc_xmss.c and wolfssl/wolfcrypt/wc_lms.h: add WOLFSSL_NAMES_STATIC code paths for struct wc_XmssString and struct wc_LmsParamsMap;
wolfcrypt/src/asn.c: add WOLFSSL_NAMES_STATIC code paths for struct CertNameData, and add static attribute to a slew of wcchars not used or declared outside asn.c.
2025-07-09 18:22:18 -05:00
Daniel Pouzzner
f733ade6a2
linuxkm/{linuxkm_wc_port.h,module_hooks.c}: add feature gates around wolfCrypt_FIPS_*_sanity() references matching those in fips_test.c.
2025-07-09 18:22:18 -05:00
David Garske
3f83ed2815
Merge pull request #8960 from ribes96/certwrite-custext
...
When creating a Cert from a WOLFSSL_X509, account for custom extensions
2025-07-09 16:13:07 -07:00
David Garske
3c00e26274
Merge pull request #8974 from rlm2002/coverity_fix
...
Coverity: Check values
2025-07-09 16:12:42 -07:00
David Garske
5d89ca6706
Fix build issue with ML-DSA 44 only. Fix --enable-mlkem=all to enable features (keygen/enc/dec) to match --enable-dilithium behavior and allow uses like: --enable-mlkem=all,512,small. Fix issue building mem track with missing PRINT_HEAP_ADDRESS (reproduced with --enable-trackmemory=verbose --enable-stacksize=verbose).
...
```
wolfcrypt/src/dilithium.c:6696:21: error: expected expression before '}' token
6696 | }
|
```
2025-07-09 15:06:41 -07:00
David Garske
e37082e496
Merge pull request #8978 from gojimmypi/pr-init-var
...
Initialize Dilithium keyTypeTemp and keySizeTemp
2025-07-09 15:03:22 -07:00
Bridger Voss
97b3364720
FREESCALE forced algs moved to IDE/MQX/user_settings.h
2025-07-09 15:04:06 -06:00
Josh Holtrop
c83a452a3c
Check for NULL pkiMsg in wc_PKCS7_DecodeEncryptedKeyPackage()
2025-07-09 14:41:58 -04:00
Josh Holtrop
d2ab6edbab
Add wc_PKCS7_DecodeEncryptedKeyPackage()
2025-07-09 13:38:11 -04:00
Anthony Hu
57e2ae5a21
Abort TLS connection if legacy version field indicates TLS 1.3 or higher.
2025-07-09 12:45:04 -04:00
gojimmypi
ebeb95e47b
Initialize Dilithium keyTypeTemp and keySizeTemp
2025-07-09 09:13:14 -07:00
Ruby Martin
6de2557748
check buflen is less than BLAKE2B_BLOCKBYTES * 2
2025-07-09 10:00:28 -06:00
Ruby Martin
7b7c658668
add null check to wc_Des_CbcEncrypt
2025-07-09 09:59:46 -06:00
David Garske
703bd6d0ba
Merge pull request #8975 from JeremiahM37/mldsa_static_mem
...
ML-DSA Static Memory Fix
2025-07-09 08:22:51 -07:00
David Garske
0407ea131b
Merge pull request #8970 from miyazakh/qt_jenkins_encryptedKey4PBKDF1
...
Fix Qt nightly Jenkins failure
2025-07-09 08:04:48 -07:00
Ruby Martin
f62d0fa256
check sigAlgs.size against WOLFSSL_MAX_SIGALGO
2025-07-09 08:57:44 -06:00
Sean Parkinson
d6a72e2480
PPC32 ARM ASM SHA-256: SPE impl, tidy up original
...
Implement using SPE instructions that allow for 64-bit registers as a
vector of 2 32-bit values.
Tidy up original implementation to not use stack.
2025-07-09 18:34:33 +10:00
JeremiahM37
88da86e900
ML DSA Static Memory Fix
2025-07-08 17:51:42 -06:00
David Garske
f44178ca1b
Merge pull request #8973 from embhorn/zd20192
...
Fix curl config to set HAVE_EX_DATA and HAVE_ALPN
2025-07-08 15:48:28 -07:00
Sean Parkinson
08ec3642f0
Merge pull request #8931 from julek-wolfssl/MAX_ENCODED_SIG_SZ-detected
...
Detect correct `MAX_ENCODED_SIG_SZ` based on max support in math lib
2025-07-08 09:38:52 +10:00
Sean Parkinson
9b92b4c902
Merge pull request #8962 from rlm2002/coverity
...
Coverity: Dereference after NULL check and Use after free
2025-07-08 08:30:35 +10:00
Eric Blankenhorn
0d14ec3547
Fix curl Cmake config to set HAVE_EX_DATA and HAVE_ALPN
2025-07-07 17:15:11 -05:00
Eric Blankenhorn
de00bf259d
Fix curl config to set HAVE_EX_DATA and HAVE_ALPN
2025-07-07 15:00:14 -05:00
Ruby Martin
de59e9d25e
change to BIO_free_all() on EXPECT_FAIL()
2025-07-07 09:17:29 -06:00
Ruby Martin
61e4142fe0
add null check for ssl before use in wc_DhGenerateKeyPair
2025-07-07 09:17:29 -06:00
Ruby Martin
65f9cdb498
free p2 before reassigning to reEncoded value
2025-07-07 09:17:29 -06:00
Juliusz Sosinowicz
51c9448aa1
Detect correct MAX_ENCODED_SIG_SZ based on max support in math lib
2025-07-07 16:42:33 +02:00
Sean Parkinson
f0041cd761
SP int: fix 8 bit words and sp_clamp_ct
...
Need to cast to sp_size_t as it may be bigger than the word type
sp_int_digit.
2025-07-07 18:43:29 +10:00
Sean Parkinson
e649e1047f
API test ASN: must not have NO_ASN defined
...
Add testing of PSK only to workflows.
2025-07-07 16:24:10 +10:00
Hideki Miyazaki
ee8be22a3f
Fix Qt nightly jenkins failure
...
PBKDF1 encrpted key
2025-07-07 15:10:41 +09:00
Sean Parkinson
70e53d1a34
ALPN: don't use BIO
...
Fix wolfSSL_set_alpn_protos to not use BIO.
When compiling with -Os and newer gcc, the compiler gets confused with
the void* cast in the wolfSSL_BIO_get_mem_data call.
2025-07-07 12:59:42 +10:00
Daniel Pouzzner
a40b56ccb5
Merge pull request #8964 from douzzer/20250703-linuxkm-fixes
...
20250703-linuxkm-fixes
Note, final commit reviewed by @SparkiDev, and earlier commit reviewed by @philljj.
2025-07-04 08:45:55 -05:00
Daniel Pouzzner
ef3a1a28d9
linuxkm/linuxkm_wc_port.h, linuxkm/module_hooks.c, and wolfcrypt/src/wc_port.c: fixes for spinlocks on CONFIG_ARM64;
...
wolfcrypt/src/wc_port.c: include random.h, for Entropy_Init().
2025-07-03 22:09:34 -05:00
Sean Parkinson
d1893dbdec
ARM 32-bit ASM AES: fixup 32-bit code to not use B.EQ
...
Changes made for Green Hills Aarch64 got into the 32-bit code.
2025-07-04 11:37:06 +10:00
Daniel Pouzzner
688bc168de
wolfcrypt/src/random.c: small stack refactor of noise[] in wc_Entropy_Get().
2025-07-03 18:30:46 -05:00
David Garske
fb691fac94
Merge pull request #8947 from SparkiDev/mldsa_openssl_der
...
ML-DSA/Dilithium: support OpenSSL format
2025-07-03 16:10:55 -07:00
Sean Parkinson
41eef2ef71
CodeQL: o is larger type and could cause issues
...
Make 'o' sp_size_t as the callers are passing 0 or explicit cast to
sp_size_t
2025-07-04 09:04:39 +10:00
Daniel Pouzzner
478bfafea3
linuxkm/lkcapi_sha_glue.c:
...
* add wc_linuxkm_drbg_ctx.n_rngs, and in wc_linuxkm_drbg_init_tfm(), set it to max(4, nr_cpu_ids), to avoid stalling on unicore targets;
* add explanatory comments re architecture to get_drbg() and get_drbg_n();
* add opportunistic cond_sched() to get_drbg_n();
* add runtime asserts in get_drbg(), wc_linuxkm_drbg_seed(), and get_default_drbg_ctx(), checking that we have the right tfm with an allocated DRBG array;
* wc_linuxkm_drbg_startup(): return failure if registering the random_bytes handlers fails;
linuxkm/patches/6.1.73/WOLFSSL_LINUXKM_HAVE_GET_RANDOM_CALLBACKS-6v1v73.patch: fix flub.
2025-07-03 17:35:37 -05:00
David Garske
d8caa8493f
Merge pull request #8959 from SparkiDev/disable_pk_algs
...
Testing disabling various PK algs
2025-07-03 15:20:57 -07:00
Sean Parkinson
519d1430d0
ML-DSA/Dilithium: support OpenSSL format
...
Support DER private key format.
2025-07-04 07:54:26 +10:00
David Garske
3fe84bf3c0
Merge pull request #8961 from douzzer/20250703-fixes-for-multi-test-reports
...
20250703-fixes-for-multi-test-reports
2025-07-03 11:07:46 -07:00
Albert Ribes
5615993f48
Add missing option checks
2025-07-03 19:01:50 +02:00
JacobBarthelmeh
01de7cc04b
Merge pull request #8955 from anhu/signed
...
Explicitly declare dilithium_coeff_eta2[] as signed
2025-07-03 10:25:46 -06:00
JacobBarthelmeh
7abaa131d3
Merge pull request #8954 from dgarske/asm_introspection
...
Added introspection for Intel and ARM assembly speedups
2025-07-03 10:22:19 -06:00
philljj
c0837cb073
Merge pull request #8943 from douzzer/20250617-linuxkm-get_random_bytes
...
20250617-linuxkm-get_random_bytes
2025-07-03 11:22:08 -05:00
Albert Ribes
2ddd98927f
When creating a Cert from a WOLFSSL_X509, account for custom extensions
...
Function 'CertFromX509' is used to convert a WOLFSSL_X509 to a Cert
structure for writing out. It didn't copy custom extensions.
2025-07-03 17:28:57 +02:00
Daniel Pouzzner
1d1a87b0a2
wolfssl/wolfcrypt/tfm.h: fix arg names in fp_to_unsigned_bin_len_ct() prototype to match tfm.c (fixes readability-inconsistent-declaration-parameter-name in clang-tidy-fips-140-3-defaults etc.).
2025-07-03 10:21:30 -05:00
Daniel Pouzzner
bdd2056645
wolfcrypt/test/test.c: fix gate in dh_test() (fixes disable-sha256).
2025-07-03 10:19:07 -05:00
Daniel Pouzzner
a1fa897572
wolfcrypt/src/dilithium.c: fix cast flubs in dilithium_encode_gamma1_19_bits() (fixes quantum-safe-wolfssl-all-gcc-latest-m32).
2025-07-03 10:17:51 -05:00
Sean Parkinson
c925ba2fe1
Testing disabling various PK algs
...
Fix api.c: disable test_EccSigFailure_cm and test_RsaSigFailure_cm when
the PK algorithm they use is disabled.
2025-07-03 16:38:54 +10:00
David Garske
6be8a3710d
Merge pull request #8937 from miyazakh/tsip_cryptcb_ut
...
Fix TSIP port using crypto callback
2025-07-02 17:42:51 -07:00
Hideki Miyazaki
b60a05f45e
Fix TSIP port using crypto callback
...
- Add unit test using cb
2025-07-03 08:23:24 +09:00
JacobBarthelmeh
c48dd28741
Merge pull request #8957 from dgarske/bench_help
...
Fix issue with benchmark help options and descriptions not lining up
2025-07-02 17:17:42 -06:00
David Garske
7f50cd537e
Merge pull request #8956 from gojimmypi/pr-workflow-owner
...
Remove duplicate repository_owner check
2025-07-02 15:01:29 -07:00
David Garske
59061aebec
Fix issue with benchmark help options and descriptions not lining up due to new -aead_set_key added in #8160 on April 14, 2025.
2025-07-02 14:58:11 -07:00
Daniel Pouzzner
dd69d56e33
linuxkm/linuxkm_wc_port.h: in malloc/realloc, use GFP_KERNEL if it's safe to sleep;
...
linuxkm/lkcapi_sha_glue.c:
* in wc_linuxkm_drbg_init_tfm(), sleep if it's safe, and observe a wc_linuxkm_drbg_init_tfm_disable_vector_registers flag;
* in wc_crng_reseed(), preemptively execute the reseed if it's safe to sleep;
* in wc_linuxkm_drbg_startup(), in LINUXKM_DRBG_GET_RANDOM_BYTES section, add reseed test sequence if defined(DEBUG_DRBG_RESEEDS).
2025-07-02 16:46:27 -05:00
gojimmypi
adc3f1b3d7
Remove duplicate repository_owner check
2025-07-02 14:32:21 -07:00
Anthony Hu
f7ea8fca67
Explicitly declare dilithium_coeff_eta2[] as signed
2025-07-02 15:50:51 -04:00
Daniel Pouzzner
0160af0a0d
linuxkm/patches/: update patches to reseed the wolfCrypt DRBG array only on explicit RNDRESEEDCRNG ioctl;
...
linuxkm/lkcapi_sha_glue.c: add error msg in wc_linuxkm_drbg_generate() if wc_InitRng() fails, and add "libwolfssl: " prefixes in pr_info() messages.
2025-07-02 14:25:05 -05:00
Daniel Pouzzner
d2083db6de
wolfssl/wolfcrypt/settings.h: in WOLFSSL_LINUXKM && LINUXKM_LKCAPI_REGISTER setup for default WC_RESEED_INTERVAL, ignore WORD64_AVAILABLE because it isn't available at this stage of inclusion.
2025-07-02 14:25:05 -05:00
Daniel Pouzzner
6275f1f7e6
linuxkm/lkcapi_rsa_glue.c: update version threshold for the v6.16 change in crypto_sig_*size() semantics, now backported to 6.15.3.
2025-07-02 14:25:05 -05:00
Daniel Pouzzner
f0662e0578
wolfssl/wolfcrypt/settings.h: remove implicit define of WOLFSSL_NO_WORD64_OPS if !WOLFSSL_SHA384 && !WOLFSSL_SHA512 && NO_AES && !WOLFSSL_SHA3 (not compatible with word64 DRBG_internal.reseedCtr).
2025-07-02 14:25:05 -05:00
Daniel Pouzzner
dc05c4c01b
wolfcrypt/src/random.c and wolfssl/wolfcrypt/random.h: refactor DRBG_internal.reseedCtr as a word64 if WORD64_AVAILABLE, to accommodate max reseed count per NIST SP 800-90A Rev. 1;
...
wolfssl/wolfcrypt/settings.h: if WOLFSSL_LINUXKM && LINUXKM_LKCAPI_REGISTER && WORD64_AVAILABLE, set default WC_RESEED_INTERVAL to max allowed (2^48);
linuxkm/lkcapi_sha_glue.c: handle NO_LINUXKM_DRBG_GET_RANDOM_BYTES, for build-time override control of LINUXKM_DRBG_GET_RANDOM_BYTES, and handle WOLFSSL_LINUXKM_USE_GET_RANDOM_USER_KRETPROBE, for separate opt-in control of the buggy wc_get_random_bytes_user_kretprobe_enter().
2025-07-02 14:25:05 -05:00
Daniel Pouzzner
3a43109208
configure.ac: remove automatic --enable-hmac-copy, due to unit test failures when defined(WOLFSSL_HMAC_COPY_HASH), not previously detected because of broken option processing.
2025-07-02 14:25:05 -05:00
Daniel Pouzzner
b3944a73c2
linuxkm/lkcapi_sha_glue.c:
...
* implement interception of _get_random_bytes() and get_random_bytes_user() (implicitly intercepts /dev/random and /dev/urandom):
* get_crypto_default_rng()
* get_default_drbg_ctx()
* wc__get_random_bytes()
* wc_get_random_bytes_user()
* wc_extract_crng_user()
* wc_mix_pool_bytes()
* wc_crng_reseed()
* wc_get_random_bytes_by_kprobe()
* wc_get_random_bytes_user_kretprobe_enter()
* wc_get_random_bytes_user_kretprobe_exit()
* add LINUXKM_DRBG_GET_RANDOM_BYTES sections to wc_linuxkm_drbg_startup() and wc_linuxkm_drbg_cleanup()
* add linuxkm/patches/*/WOLFSSL_LINUXKM_HAVE_GET_RANDOM_CALLBACKS-*.patch, initially for versions:
* 5.10.17
* 5.10.236
* 5.15
* 5.17
* 6.1.73
* 6.12
* 6.15
* remove "*.patch" from .gitignore.
* add linuxkm/patches/regen-patches.sh.
* in wc_linuxkm_drbg_ctx_clear(), check lock count before freeing.
* in get_drbg() and put_drbg(), use migrate_disable(), not DISABLE_VECTOR_REGISTERS().
* in wc_linuxkm_drbg_generate(), explicitly DISABLE_VECTOR_REGISTERS() for the crypto_default_rng.
* in wc_linuxkm_drbg_generate(), add DRBG reinitialization code to handle RNG_FAILURE_E. This handles the situation where a DRBG was instantiated in a vector-ops-allowed context, caching a vectorized SHA256 ethod, but later used in a no-vector-ops-allowed context.
* in wc_linuxkm_drbg_seed(), add DISABLE_VECTOR_REGISTERS() wrapper around wc_RNG_DRBG_Reseed() for crypto_default_rng.
linuxkm/x86_vector_register_glue.c:
* add crash recovery logic to wc_linuxkm_fpu_state_assoc_unlikely()
* in wc_linuxkm_fpu_state_assoc(), when wc_linuxkm_fpu_states is null, don't call wc_linuxkm_fpu_state_assoc_unlikely() if !assume_fpu_began.
* in can_save_vector_registers_x86(), save_vector_registers_x86(), and restore_vector_registers_x86(), check for hard interrupt context first, to return early failure if current->pid is unusable.
* in save_vector_registers_x86(), tweak logic around WC_FPU_INHIBITED_FLAG, adding local_bh_disable()...local_bh_enable() to provide for safe recursion.
wolfcrypt/src/random.c: optimization: in Hash_df(), for WOLFSSL_LINUXKM, don't put digest[WC_SHA256_DIGEST_SIZE] in the heap, keep it on the stack.
wolfssl/wolfcrypt/types.h: add WOLFSSL_NO_ASM no-op definitions for DISABLE_VECTOR_REGISTERS() and REENABLE_VECTOR_REGISTERS().
configure.ac:
* move --enable-linuxkm and --enable-linuxkm-defaults initial detection early, so that HMAC_COPY_DEFAULT picks it up.
* add ENABLED_ENTROPY_MEMUSE_DEFAULT, and enable it by default when ENABLED_LINUXKM_DEFAULTS.
* update linuxkm-lkcapi-register help message.
linuxkm/linuxkm_wc_port.h:
* add my_kallsyms_lookup_name().
* add preempt_count, _raw_spin_lock_irqsave, _raw_spin_trylock, _raw_spin_unlock_irqrestore, and _cond_resched, to wolfssl_linuxkm_pie_redirect_table, and add spin_unlock_irqrestore() macro to mask native inline.
* move linuxkm mutex wrappers from wolfcrypt/src/wc_port.c to linuxkm_wc_port.h, make them inlines, and add new default spinlock-based implementation, with old method now gated on WOLFSSL_LINUXKM_USE_MUTEXES.
* change malloc() and realloc() wrappers from GFP_KERNEL to GFP_ATOMIC.
linuxkm/lkcapi_glue.c: make misc.h/misc.c inclusion unconditional, and trim now-redundant inclusions out of lkcapi_dh_glue.c and lkcapi_ecdh_glue.c.
2025-07-02 14:25:05 -05:00
Daniel Pouzzner
b25d484a4e
linuxkm/lkcapi_sha_glue.c: implement mutex-free sync mechanism for wc_linuxkm_drbg_ctx in new get_drbg(), get_drbg_n(), and put_drbg();
...
linuxkm/x86_vector_register_glue.c: implement support for WC_FPU_INHIBITED_FLAG, and an `int inhibit_p` argument to save_vector_registers_x86();
wolfcrypt/src/random.c: implement linuxkm support for RDSEED and HAVE_ENTROPY_MEMUSE;
wolfssl/wolfcrypt/error-crypt.h and wolfcrypt/src/error.c: add WC_ACCEL_INHIBIT_E "Crypto acceleration is currently inhibited";
linuxkm/module_hooks.c and linuxkm/x86_vector_register_glue.c: remove broken and bit-rotten WOLFSSL_COMMERCIAL_LICENSE and LINUXKM_FPU_STATES_FOLLOW_THREADS code paths.
2025-07-02 14:25:05 -05:00
Daniel Pouzzner
8cc2ba7153
Merge pull request #8953 from philljj/fedora_linuxkm_uninit_errors
...
linuxkm fedora: fix uninitialized build errors.
2025-07-02 14:20:26 -05:00
David Garske
221330df0b
Added introspection for Intel and ARM assembly speedups (useful for benchmarking output). Added STM32F439ZI benchmarks.
...
`--enable-armasm` : `Assembly Speedups: ARMASM ALIGN`
`--enable-intelasm` : `Assembly Speedups: INTELASM ALIGN X86_64_BUILD`
2025-07-02 10:57:24 -07:00
jordan
9e811b5bd5
wolfcrypt misc: avoid frivolous initialization.
2025-07-02 10:46:38 -05:00
David Garske
fa9e122f1c
Merge pull request #8952 from SparkiDev/mem_fail_fixes_3
...
Unit Test: fix test case for memory allocation failure testing
2025-07-02 08:01:20 -07:00
jordan
9ac480a60d
linuxkm fedora: fix uninitialized build errors.
2025-07-02 10:00:28 -05:00
Sean Parkinson
af05fa874f
Unit Test: fix test case for memory allocation failure testing
...
test_ocsp_basic_verify() not freeing and setting pointer to NULL. Second
free occuring on freed pointer.
2025-07-02 09:27:25 +10:00
JacobBarthelmeh
ff80d62db2
Merge pull request #8942 from rlm2002/coverity
...
Coverity: address unresolved issue from previous change
2025-07-01 16:09:32 -06:00
David Garske
33510ad714
Merge pull request #8949 from holtrop/asn-fn-prototype-names
...
wc/asn: fix several inconsistent function prototype parameter names
2025-07-01 14:50:51 -07:00
Ruby Martin
c06fa48e75
return NULL on negative length
2025-07-01 14:25:35 -06:00
Kaleb Himes
f2abadb777
Merge pull request #8950 from douzzer/20250701-Hash_DRBG_Generate-DEBUG_WOLFSSL
...
20250701-Hash_DRBG_Generate-DEBUG_WOLFSSL
2025-07-01 14:03:59 -06:00
Daniel Pouzzner
a8fc68d81b
wolfcrypt/src/random.c: in Hash_DRBG_Generate(), gate the verbose reseed message on DEBUG_WOLFSSL or DEBUG_DRBG_RESEEDS, use WOLFSSL_MSG_EX(), and refactor the condition from drbg->reseedCtr == RESEED_INTERVAL to drbg->reseedCtr >= WC_RESEED_INTERVAL.
...
also some unrelated cleanup in .wolfssl_known_macro_extras.
2025-07-01 13:05:00 -05:00
JacobBarthelmeh
8fa0f6b3df
Merge pull request #8944 from SparkiDev/evp_hmac_copy_hash_fix
...
EVP HMAC: get working with WOLFSSL_HMAC_COPY_HASH
2025-07-01 09:50:53 -06:00
JacobBarthelmeh
77792ace65
Merge pull request #8945 from SparkiDev/mem_fail_fixes_2
...
Memory allocation failure testing fixes
2025-07-01 09:35:11 -06:00
JacobBarthelmeh
9cf5bbcd35
Merge pull request #8948 from AlexLanzano/disable-md5-cmake
...
Disable MD5 by default for cmake builds
2025-07-01 09:29:42 -06:00
Josh Holtrop
fd1954babf
wc/asn: fix several inconsistent function prototype parameter names
2025-07-01 11:14:11 -04:00
Alex Lanzano
709581061e
Disable MD5 by default for cmake builds
2025-07-01 09:27:46 -04:00
Sean Parkinson
7c4de54e73
EVP HMAC: get working with WOLFSSL_HMAC_COPY_HASH
...
Get the EVP layer working with the wolfSSL HMAC implementation when
WOLFSSL_HMAC_COPY_HASH is defined.
This define hashes the ipad and opad into temporary hashes and copies
the required hash into the working hash when needed. Uses more memory
but is faster when starting a new hash with the same key.
2025-07-01 13:14:26 +10:00
Sean Parkinson
574de4b234
Memory allocation failure testing fixes
...
Fixes for test code to cleanup on failure properly.
pkcs7.c: when streaming, free the decrypting content when adding data to
the stream fails.
2025-07-01 11:50:42 +10:00
JacobBarthelmeh
7fb750962b
Merge pull request #8935 from philljj/fix_coverity
...
coverity: prune dead code in ssl_sess.c.
2025-06-30 13:32:34 -06:00
Sean Parkinson
5db7fc05d8
Merge pull request #8940 from rizlik/dtls_fix_record_span_tests
...
fix(tests): enlarge readBuf in DTLS record tests
2025-06-30 21:57:27 +10:00
Marco Oliverio
ae9ba6627c
fix(tests): enlarge readBuf in DTLS record tests
...
Increase readBuf to 256 bytes. Guard memcpy with EXPECT_SUCCESS().
2025-06-30 09:47:38 +02:00
Daniel Pouzzner
6c8ab11f5f
Merge pull request #8936 from gojimmypi/pr-workflow-owner
...
Ensure workflows only run for wolfssl repository_owner
2025-06-27 22:29:46 -05:00
Daniel Pouzzner
1127dabe98
Merge pull request #8926 from dgarske/various_20250625
...
Improvement to allow building OPENSSL_EXTRA without KEEP_PEER_CERT
2025-06-27 22:29:24 -05:00
Daniel Pouzzner
89148f98b0
Merge pull request #8921 from rlm2002/appleNativeCertTests
...
Apple native cert tests code modifications
2025-06-27 22:26:17 -05:00
Daniel Pouzzner
018ee9754f
Merge pull request #8608 from anhu/2akid
...
Check for duplicate extensions in a CRL
2025-06-27 22:25:27 -05:00
Daniel Pouzzner
d1c1bca9e4
Merge pull request #8914 from dgarske/stm32n6
...
Added support for STM32N6
2025-06-27 22:19:01 -05:00
gojimmypi
7621612eb8
Ensure workflows only run for wolfssl repository_owner
2025-06-27 16:29:13 -07:00
jordan
68cf96e7f6
coverity: do not free x509 on error in wolfSSL_add0_chain_cert.
2025-06-27 17:25:28 -05:00
jordan
d998d01a0c
coverity: prune dead code in ssl_sess.c.
2025-06-27 15:40:01 -05:00
David Garske
1db3dbcc28
Improvement to allow building OPENSSL_EXTRA without KEEP_PEER_CERT. Workaround to avoid large WOLFSSL structure size with compatibility layer enabled (the struct WOLFSSL_X509 is over 5KB). Note: May investigate way to place into heap instead. Fix issues building compatibility layer without MD5.
2025-06-27 12:42:52 -07:00
Daniel Pouzzner
4421f8bd84
Merge pull request #8934 from dgarske/macos_typo
...
Fix minor code typos for macos signal and types.h max block size
2025-06-27 14:11:31 -05:00
David Garske
3a200387c0
Fix a copy/paste typo WC_MAX_BLOCK_SIZE from PR #8909 .
2025-06-27 08:59:05 -07:00
David Garske
22c8a014e3
Merge pull request #8932 from rizlik/gaisler
...
Gaisler: minor doc fixes
2025-06-27 08:46:28 -07:00
David Garske
9a2c8840e2
Merge pull request #8933 from SparkiDev/armv7a_asm_branch_fix
...
ARMv7a ASM: fix branch instruction
2025-06-27 08:45:52 -07:00
David Garske
8b61cd6c4a
Merge pull request #8895 from AlexLanzano/disable-md5
...
Disable MD5 by default
2025-06-27 08:45:28 -07:00
David Garske
295d90655b
Merge pull request #8929 from SparkiDev/regression_fixes_18
...
Regression testing
2025-06-27 08:44:43 -07:00
David Garske
20a2ec0fc1
Fix typo from MacOS signal fix improvement in PR #8928 .
2025-06-27 07:43:55 -07:00
Sean Parkinson
edacf0434c
Merge pull request #8869 from rlm2002/coverityTests
...
Coverity: parameter checking and NULL assignment
2025-06-27 09:49:21 +10:00
Sean Parkinson
a7430b3f70
Merge pull request #8930 from kojiws/check_shift_counts
...
Clarify the len range on SetShortInt()
2025-06-27 09:46:42 +10:00
Sean Parkinson
f713882c54
Merge pull request #8928 from dgarske/macos
...
Implement proper MacOS dispatch for conditional signal/wait
2025-06-27 09:35:30 +10:00
Sean Parkinson
81e1eb4600
ARMv7a ASM: fix branch instruction
...
Branch instructions got changed for 64-bit to be B.<cond>.
32-bit must be B<cond>.
Return them to this form.
2025-06-27 09:26:28 +10:00
Ruby Martin
0302dbcb31
rename .yml file for macos-apple-native-cert-validation
...
WOLFSSL_TEST_APPLE_NATIVE_CERT_VALIDATION macro placement and comment adjustment
2025-06-26 17:07:00 -06:00
Marco Oliverio
5eceb4faf4
Gaisler: minor doc fixes
2025-06-26 23:18:40 +02:00
Anthony Hu
a0cd18daea
Add back a removed comment and give RFC reference.
2025-06-26 16:08:21 -04:00
Ruby Martin
8ab08f7b17
check length in wc_oid_sum()
...
add MAX_OID_SZ to known macro extras
2025-06-26 09:20:26 -06:00
Ruby Martin
9b6b41627e
move CFErrorRef instantiation
...
cleanup
2025-06-26 09:06:01 -06:00
Ruby Martin
1321e00e45
set p2 to null before next iteration
2025-06-26 08:57:56 -06:00
Ruby Martin
79b6e62668
modify check domain test
...
void code for unused variable warning
do not run check_domain_name test if ssl_verify_none has been set
2025-06-26 08:39:32 -06:00
Ruby Martin
7c44f14e77
add apple test to github actions
2025-06-26 08:38:30 -06:00
Ruby Martin
d3b30f8d51
Check underlying error, want only maximum validity period error
...
add apple test macros to tests requiring cert manager
2025-06-26 08:38:28 -06:00
Brett
877bade216
additional debugging
2025-06-26 08:38:28 -06:00
Brett
7232b3a6bb
Apple native cert validation: add WOLFSSL_TEST_APPLE_CERT_VALIDATION feature macro that forces system CA certs on and makes all CA certs added to CM via xxx_load_verify_xxx APIs to instead be loaded as system trust anchors when used for TLS cert verification
2025-06-26 08:38:26 -06:00
Sean Parkinson
f1cb4d579c
Regression testing
...
Fixes to get WOLFSSL_PUBLIC_MP testing passing.
Fix DH constant time agreement:
- implement constant time encoding to big-endian byte array in TFM
- only force x to be zero for SP math as others implementations ensure
unused words are zero
- exponentiate in constant time to the smallest number of words
possible
- no need to encode into separate buffer anymore as encoding is
constant time and front padded
- make requested_sz be the maximum size for the parameters and check
against agreeSz
- update agreeSz to be the maximum valid size instead of filling all
the buffer which may be many times too big
- fix SP result to front pad when doing constant time
2025-06-26 21:21:05 +10:00
Koji Takeda
b734c47cc9
Check the len range stricter
2025-06-26 17:48:52 +09:00
Daniel Pouzzner
981ba4b14c
Merge pull request #8925 from mattia-moffa/20250625-wolftpm-ca-false
...
Allow CA:FALSE on wolftpm
2025-06-25 22:27:27 -05:00
Daniel Pouzzner
41e2d920a5
Merge pull request #8924 from JacobBarthelmeh/cert_expr
...
regenerate intermediate and crl certs to update ca-int.pem
2025-06-25 22:26:26 -05:00
Daniel Pouzzner
d49eb5f2c4
Merge pull request #8920 from kaleb-himes/wolfEntropy-2025
...
Update wolfEntropy checkout with AdPr update
2025-06-25 22:21:36 -05:00
Daniel Pouzzner
6fb1c54c29
Merge pull request #8854 from dgarske/renesas_rx_tsip_aesctr
...
Added Renesas RX TSIP AES CTR support
2025-06-25 22:20:03 -05:00
Daniel Pouzzner
6bfd2632db
Merge pull request #8917 from dgarske/various_20250623
...
Fix for broken `test_wolfSSL_check_domain_basic`
2025-06-25 22:15:02 -05:00
Daniel Pouzzner
23a37b2ebc
Merge pull request #8916 from dgarske/revert_pr8911
...
Revert PR #8911
2025-06-25 21:52:34 -05:00
Daniel Pouzzner
d6d124bb85
Merge pull request #8774 from SparkiDev/armv8_ghs
...
Armv8 (Aarch64) ASM fixes for Green Hills compiler
2025-06-25 21:46:48 -05:00
Daniel Pouzzner
29f534f3b0
Merge pull request #8836 from SparkiDev/lms_serialize_state
...
LMS: Allow state to be saved with private key
2025-06-25 21:34:42 -05:00
Daniel Pouzzner
38892fdd07
Merge pull request #8757 from anhu/recalc_suites
...
Recalculate suites at ssl initialization.
2025-06-25 21:32:38 -05:00
David Garske
6b7fe091bf
Implement proper MacOS dispatch for conditional signal/wait. Note: this logic was pulled from wolfMQTT and is well established.
2025-06-25 17:14:12 -07:00
Sean Parkinson
f119086d3e
Merge pull request #8918 from kojiws/fix_asn_integer_export
...
Fix SetShortInt() not to export wrong DER
2025-06-26 08:16:48 +10:00
Sean Parkinson
80a234a0c5
Merge pull request #8830 from JacobBarthelmeh/rx_threadx
...
add option to not use CT code with min/max
2025-06-26 08:15:09 +10:00
Mattia Moffa
e9e00c47ab
Allow CA:FALSE on wolftpm
...
The Intel CSME fTFM sets this basic constraint on their EK certificates
and by default wolfSSL fails to parse because of this.
2025-06-25 22:48:53 +02:00
Alex Lanzano
9ae221444c
Enable MD5 when --enable-opensslall is set
2025-06-25 15:16:02 -04:00
JacobBarthelmeh
7b5e3e2551
regenerate intermediate and crl certs to update ca-int.pem
2025-06-25 10:00:57 -06:00
Alex Lanzano
6bba48d89c
Enable MD5 when --enabled-bump is set
2025-06-25 11:47:04 -04:00
Alex Lanzano
39cef87e43
Enable MD5 when --enable-des3 is set
2025-06-25 11:42:10 -04:00
Alex Lanzano
caaa4fbc5d
Enable MD5 when --enable-lighty is set
2025-06-25 11:35:35 -04:00
Alex Lanzano
3e774f8074
Enable MD5 when --enable-mcapi is set
2025-06-25 11:33:52 -04:00
Alex Lanzano
4275b66211
Enable MD5 when --enable-jni is set
2025-06-25 11:27:08 -04:00
Alex Lanzano
4fd0029f18
Enable MD5 when --enable-fortress is set
2025-06-25 11:21:00 -04:00
Alex Lanzano
f33d1d69bb
Enable MD5 when --enable-asio is set
2025-06-25 11:15:50 -04:00
Alex Lanzano
495324d4dc
Add the md5 dependency to options that require it
2025-06-25 11:00:41 -04:00
Alex Lanzano
07f76723e2
Disable MD5 by default
...
Disable the use of MD5 by default. Add the conditional use of MD5 when
--enable-all-crypto is present. Add the use of MD5 when
--enable-opensslextra is present. Add the use of MD5 when
--enable-tlsv10 is present.
2025-06-25 11:00:41 -04:00
Daniel Pouzzner
1c1c556e5e
Merge pull request #8915 from philljj/linuxkm_rsa_fix_sig_callbacks
...
linuxkm rsa: set sig_alg max_size and digest_size callbacks.
2025-06-25 08:28:04 -05:00
Daniel Pouzzner
e223da457c
Merge pull request #8922 from JacobBarthelmeh/rng
...
altering macro guards and test case for RNG test on alternate builds
2025-06-24 22:15:14 -05:00
Koji Takeda
d76386f38c
Add tests
2025-06-25 11:27:12 +09:00
Koji Takeda
05c8bc7514
Fix SetShortInt()
2025-06-25 11:27:11 +09:00
JacobBarthelmeh
6cf3b51333
guard test that uses pipe from running with mingw
2025-06-24 17:21:24 -06:00
Sean Parkinson
5c9ad359d1
Merge pull request #8904 from anhu/bigger_header
...
Fix missing dashes on the end of header and footer.
2025-06-25 08:26:59 +10:00
JacobBarthelmeh
fe7d458d29
random.c is also locked in FIPS v6
2025-06-24 16:08:25 -06:00
JacobBarthelmeh
1c5e531332
add new macro to known macro list
2025-06-24 14:57:17 -06:00
JacobBarthelmeh
c33035e6a6
add conditions to constant time mask functions
2025-06-24 13:52:40 -06:00
JacobBarthelmeh
838636c76b
add option to not use CT code with min/max
2025-06-24 13:52:40 -06:00
jordan
1e0e4932ca
linuxkm rsa: fix km_pkcs1_key_size callback.
2025-06-24 14:41:57 -05:00
David Garske
33972e3678
Disable system CA certs for msys2 test.
2025-06-24 10:28:42 -07:00
kaleb-himes
f5f0bdf61e
Update wolfEntropy checkout with AdPr update
2025-06-24 10:54:52 -06:00
David Garske
41591e7eb9
Fixes for TSIP AES CTR unit tests and handling of invalid cases.
2025-06-24 09:41:33 -07:00
David Garske
191165a021
Test case created by @miyazakh.
2025-06-24 09:41:33 -07:00
David Garske
dc57adcfed
Fix to increment IV for AES CTR with TSIP (allow encrypt to be called multiple times without having to manually reset the IV).
2025-06-24 09:41:33 -07:00
David Garske
c7ff3b99b7
Allow for calling the Renesas RX TSIP AES crypto callback without a user context.
2025-06-24 09:41:33 -07:00
David Garske
ad9d068174
Fix issues with crypto callbacks and HAVE_ECC_DHE. Fix issues with ecc_onlycb_test.
2025-06-24 09:41:33 -07:00
David Garske
111feedadc
Add build guards on the crypto callback ECC items.
2025-06-24 09:41:32 -07:00
David Garske
c7f6673e53
Fixup the .wolfssl_known_macro_extras
2025-06-24 09:41:32 -07:00
David Garske
ebe8816c2a
Code size reductions (check RX TSIP enables).
2025-06-24 09:41:32 -07:00
David Garske
78362bc346
Changes to support Renesas RX TSIP AES CTR.
2025-06-24 09:41:32 -07:00
David Garske
33584550e8
Cleanup to support override of HAL_CONSOLE_UART. Added support for STM32F439xx.
2025-06-24 09:41:01 -07:00
David Garske
803edb0fa4
Added support for STM32N6.
2025-06-24 09:41:01 -07:00
David Garske
bfebeae533
Revert PR #8911 . For TLS v1.2 RSA only is only supported with WOLFSSL_STATIC_RSA. For TLS v1.3 RSA only is not supported (must be PFS).
2025-06-24 09:40:15 -07:00
Daniel Pouzzner
b8aa4bd84b
Merge pull request #8919 from philljj/fix_linuxkm_getpid
...
linuxkm: add WOLFSSL_NO_GETPID to wolfcrypt settings.h.
2025-06-24 11:32:56 -05:00
jordan
5503ea8e6d
linuxkm: add WOLFSSL_NO_GETPID to wolfcrypt settings.h.
2025-06-24 11:12:00 -05:00
David Garske
5d7cb2ec07
Fix for new api.c test test_wolfSSL_check_domain_basic added in PR #8863 that fails with --disable-sys-ca-certs.
2025-06-24 08:25:01 -07:00
Anthony Hu
72ec4029d1
Correct the size for MLDSA PEM header
2025-06-24 11:12:27 -04:00
Anthony Hu
423ecf8b1f
Try harder not to make stack increases
2025-06-24 11:12:27 -04:00
Anthony Hu
a0f6b779a5
-----BEGIN SPHINCS_SMALL_LEVEL1 PRIVATE KEY----- is the longest one at length 48
2025-06-24 11:12:27 -04:00
Anthony Hu
bf928795b3
Fix missing dashes on the end of header and footer.
2025-06-24 11:12:27 -04:00
Anthony Hu
1dff76782b
Check for duplicate extensions in a CRL
2025-06-24 11:10:18 -04:00
Anthony Hu
43df11c9c1
Add gate on having DH
2025-06-24 10:37:26 -04:00
Anthony Hu
8c1298a1d8
Check if DH's P and G are set
2025-06-24 09:59:12 -04:00
Sean Parkinson
d05790ed89
LMS: Allow state to be saved with private key
...
Defining WOLFSSL_WC_LMS_SERIALIZE_STATE will have the state serialized
before the private key data.
Lots of memory used but means fast reload times. That means that the key
can be reloaded for each sign.
2025-06-24 20:46:41 +10:00
Sean Parkinson
fc1d281268
Green Hills compiler fixes
...
internal.c: Move non-enumeration value out of switch.
ssl.c: Only declare globalRNGMutex when required.
x509.c: initialize ret
armv8-aes.c, armv8-chacha.c: fix branch instructions
armv8-mlkem*: ensure only required constants are input operands and move
constants closer to first use.
armv8-poly1305.c: remove POLY1305_BLOCK_SIZE from input operands.
armv8-sha3-asm_c.c, armv8-sha512-asm_c.c: use constraint ':' instead of
'S'.
armv8-sha512.c: initialize initfp. Is always used.
2025-06-24 19:39:40 +10:00
Sean Parkinson
f8bb889712
Armv8 (Aarch64) ASM fixes for Green Hills compiler
...
Change branch instructions to proper form.
Use constant value rather than POLY1305_BLOCK_SIZE.
Remove duplicate clobber registers - both w and x versions.
Make clamp unconditionally compiled.
2025-06-24 19:39:39 +10:00
David Garske
978a29da0b
Merge pull request #8898 from cconlon/getpidOptionsH
...
Add HAVE_GETPID to options.h if getpid detected
2025-06-23 17:11:55 -07:00
JacobBarthelmeh
9ee212cacc
fix for free'ing memory with test case
2025-06-23 17:33:52 -06:00
David Garske
c4428a432f
Merge pull request #8912 from SparkiDev/lms_sha256_192_w_fix
...
LMS SHA-256_192: fix parameters
2025-06-23 15:35:02 -07:00
Anthony Hu
d45e42e2e6
keySz is only in Buffers if NO_CERTS not defined.
2025-06-23 18:29:39 -04:00
Anthony Hu
6385999ae9
Recalculate suites at ssl initialization.
2025-06-23 18:29:39 -04:00
Anthony Hu
aec13923a7
Merge pull request #8913 from dgarske/pq_verifyonly
...
Fix for building LMS with verify only
2025-06-23 16:37:32 -04:00
David Garske
f1005c33fb
Merge pull request #8905 from gojimmypi/pr-vs-cmake
...
Introduce CMakePresets.json and CMakeSettings.json
2025-06-23 11:18:57 -07:00
David Garske
caf8494d65
Merge pull request #8911 from gojimmypi/pr-allow-only-rsa
...
Allow configuration with only RSA cipher suites
2025-06-23 11:18:27 -07:00
David Garske
d4c827bc5e
Fix for building LMS with verify only. Added tests for LMS/XMSS verify only. New wc_LmsKey_GetKid references key->priv_raw that is not available.
2025-06-23 11:12:53 -07:00
Daniel Pouzzner
b361c62372
Merge pull request #8903 from dgarske/cadate_calist
...
Expose API to access "store" error code and depth for cert failure callback
2025-06-23 10:08:41 -05:00
Daniel Pouzzner
47a8242093
Merge pull request #8868 from SparkiDev/dilithium_win_fixes_1
...
Dilithium/ML-DSA: Fixes for casting down and uninit
2025-06-23 09:02:35 -05:00
Daniel Pouzzner
bcdce75b08
Merge pull request #8909 from dgarske/various_20250620
...
Fixes with max size, openssl.test netcat and clang-tidy
2025-06-23 08:15:17 -05:00
Sean Parkinson
f36f86ee98
LMS SHA-256_192: fix parameters
...
Winternitz bits needs to be one larger when only 192 bit hash.
2025-06-23 08:16:05 +10:00
gojimmypi
afa22dfc2b
Allow configuration with only RSA cipher suites
2025-06-21 14:54:10 -07:00
David Garske
b9455bc94b
Fixes issue with cert gen, no malloc and crypto callback causing wolfssl/wolfcrypt/asn.h:1375:18: error: use of undeclared identifier 'WC_MAX_DIGEST_SIZE. Fixed netcat issue in openssl.test causing server open check to fail on some platforms. Fixed clang-tidy report in benchmark.c where XFTELL could return negative (error) and wasn't handled.
2025-06-20 16:34:46 -07:00
David Garske
1be303866e
Merge pull request #8908 from douzzer/20250620-clang-tidy-and-cppcheck-fixes-and-workarounds
...
20250620-clang-tidy-and-cppcheck-fixes-and-workarounds
2025-06-20 15:07:09 -07:00
David Garske
f30c54abdd
Merge pull request #8894 from SparkiDev/ppc32_sha256_asm
...
PPC 32 ASM: SHA-256
2025-06-20 14:29:47 -07:00
Daniel Pouzzner
af78ed8b6f
wolfcrypt/src/wc_xmss_impl.c: in wc_xmss_bds_state_treehash_complete(), add suppression for false positive clang-analyzer-core.NullDereference from LLVM-21 pre20250523+.
2025-06-20 15:31:31 -05:00
Daniel Pouzzner
7977a605c5
src/internal.c: in FreeSskeArgs(), move nullness check on args to the start, and make it unconditional, to resolve nullPointerRedundantChecks.
2025-06-20 15:04:07 -05:00
Daniel Pouzzner
e1fe186753
wolfcrypt/src/sp_int.c: in _sp_prime_trials(), use DECL_SP_INT() not DECL_SP_INT_ARRAY() for n1 and r, to mollify a very confused clang-tidy (fixes false positive clang-analyzer-core.UndefinedBinaryOperatorResult and clang-analyzer-core.CallAndMessage).
2025-06-20 14:52:42 -05:00
David Garske
0f119ab8e2
Merge pull request #8906 from julek-wolfssl/libspdm-3.7.0
...
libspdm 3.3.0 -> 3.7.0
2025-06-20 11:44:53 -07:00
David Garske
b98cf8882b
Remove HAVE_LIGHTY from the client_ca_names feature.
2025-06-20 11:29:02 -07:00
gojimmypi
380e068df6
Introduce CMakePresets.json and CMakeSettings.json
2025-06-20 11:24:58 -07:00
Juliusz Sosinowicz
9f900d4b8a
libspdm 3.3.0 -> 3.7.0
...
3.3.0 pulls cmocka from https://git.cryptomilk.org/projects/cmocka.git . Update to 3.7.0 to pull from https://gitlab.com/cmocka/cmocka.git .
2025-06-20 19:55:16 +02:00
David Garske
4c6279c6c7
Good feedback about adding wolfCrypt error codes to .cs layer. Partially added useful ones.
2025-06-20 09:41:35 -07:00
Kaleb Himes
17f3da11d2
Merge pull request #8899 from SparkiDev/entropy_cont_tests_fix_2
...
Entropy: fix proportion health test
2025-06-20 09:10:41 -06:00
David Garske
9b50708741
Fix to expose API to access "store" error code and error depth for cert failure callback (from set_verify). Useful for C# wrapper or clients that cannot directly dereference X509_STORE. Fixes for building with WOLFSSL_EXTRA and WOLFSSL_NO_CA_NAMES (and added new tests). Added example in CSharp TLS client for overriding a begin date error (useful if date is not set).
2025-06-19 14:49:00 -07:00
David Garske
7610b4e2f5
Merge pull request #8893 from SparkiDev/asm_omit_frame_pointer
...
ARM32/Thumb2/RISC-V 64 ASM: omit frame pointer
2025-06-19 10:48:23 -07:00
David Garske
96a3591f98
Merge pull request #8896 from holtrop/fix-asn-memory-leak
...
Fix memory leak in ParseCRL_Extensions
2025-06-19 06:18:41 -07:00
David Garske
8f0106a7fe
Merge pull request #8888 from julek-wolfssl/bind-v9.18.33
...
Add bind v9.18.33 testing
2025-06-19 06:08:13 -07:00
David Garske
64bc41a3c3
Merge pull request #8901 from SparkiDev/ecc_config_fixex_1
...
ECC configuration fixes
2025-06-19 06:02:33 -07:00
Sean Parkinson
f7fb68dedc
Merge pull request #8884 from dgarske/enablecerts
...
Fix to make sure ASN.1 is enabled if just building PQ algorithms
2025-06-19 15:50:59 +10:00
Sean Parkinson
7289687b44
ECC configuration fixes
...
When ECC verify only and with no RNG.
2025-06-19 13:37:43 +10:00
Sean Parkinson
62721f4d51
PPC32 SHA-256 ASM: small code implementation
...
Slower but smaller SHA-256 assembly code implementation enabled with:
WOLFSSL_PPC32_ASM_SMALL. (--enable-ppc32=small or
--enable-ppc32=inline,small)
2025-06-19 10:51:12 +10:00
Sean Parkinson
16aab18ae9
Entropy: fix proportion health test
...
Update the count of entries.
2025-06-19 10:34:03 +10:00
Chris Conlon
cdd02f9665
Add check for reseed in ssl.c for HAVE_SELFTEST, similar to old FIPS bundles that do not have older random.c files
2025-06-18 17:21:55 -06:00
Chris Conlon
9c35c0de65
Add HAVE_GETPID to options.h if getpid detected, needed for apps to correctly detect size of WC_RNG struct
2025-06-18 16:08:34 -06:00
Josh Holtrop
7dfb782c9e
Fix memory leak in ParseCRL_Extensions
2025-06-18 16:47:15 -04:00
David Garske
74de689941
Merge pull request #8875 from kareem-wolfssl/zd20035
...
Fix SRP wolfCrypt test on lower FP_MAX/SP_INT_BITS configs
2025-06-18 08:59:09 -07:00
David Garske
27176a5eeb
Merge pull request #8870 from kareem-wolfssl/zd20030
...
Various minor fixes.
2025-06-18 08:55:07 -07:00
David Garske
e5a9c7039c
Merge pull request #8889 from holtrop/remove-dtls-from-echo-examples
...
Remove DTLS from echo examples
2025-06-18 08:52:47 -07:00
David Garske
9528aaf238
Support WOLFSSL_TRACK_MEMORY with SINGLE_THREADED.
2025-06-18 08:37:27 -07:00
David Garske
cdbc4cb3b3
Fix to make sure certs/asn are enabled for PQ algorithms
2025-06-18 08:32:49 -07:00
Sean Parkinson
c39f1fe721
PPC 32 ASM: SHA-256
...
Pure and inline ASM for the PowerPC 32-bit.
2025-06-18 21:23:15 +10:00
Sean Parkinson
dc70cfa3b3
ARM32/Thumb2/RISC-V 64 ASM: omit frame pointer
...
ARM32/Thumb2: Generated code now omits the frame pointer attribute on
each function. Remove global use in configure.ac.
RISC-V 64: Omit the frame pointer on the one function that uses the
register 's0'.
2025-06-18 10:20:55 +10:00
Kaleb Himes
6f78c26bff
Merge pull request #8820 from SparkiDev/entropy_cont_tests_fix
...
Entropy - fix off by ones in continuous testing
2025-06-17 17:56:00 -06:00
Sean Parkinson
c724c6560d
Entropy - fix off by ones in continuous testing
...
rep_cnt is count of contiguous bytes with same value.
First ever sample must set count to 1.
Wasn't filling the cache up completely.
Off by one in check for initial fill.
2025-06-18 08:10:55 +10:00
Josh Holtrop
feaae9fc58
Fix configure help to use --enable-debug instead of --enable-verbose
2025-06-17 14:38:01 -04:00
Josh Holtrop
0b6c53c8b0
Remove DTLS from echoserver/echoclient examples
...
This fixes some intermittent CI testsuite failures.
2025-06-17 14:38:01 -04:00
David Garske
7d77446964
Merge pull request #8882 from rizlik/dtls13_always_transmit_explicit_ack
...
dtls13: always send ACKs on detected retransmission
2025-06-17 11:35:07 -07:00
Daniel Pouzzner
d39295166f
Merge pull request #8885 from embhorn/zd20088
...
Check for STDC_NO_ATOMICS
2025-06-17 13:33:39 -05:00
David Garske
6b68797b4f
Merge pull request #8883 from JacobBarthelmeh/rng
...
account for Intel RDRAND build without HAVE_HASHDRBG
2025-06-17 11:33:16 -07:00
David Garske
7e864c177d
Merge pull request #8886 from douzzer/20250617-prime_test-uninited-wc_FreeRng
...
20250617-prime_test-uninited-wc_FreeRng
2025-06-17 11:31:53 -07:00
Kareem
fe5ae0cbdf
Restore 128-byte SRP test using safe prime N for the case where 192 bytes is too large for the fast/SP math config.
2025-06-17 11:30:11 -07:00
Kareem
a035b045a4
Only run SRP tests with at least 3072 bits.
...
The SRP buffers are 192 bytes, so they need a minimum of 3072 bits.
If the bit size is too low, wc_SrpGetVerifier will return MP_VAL as the buffers won't fit.
2025-06-17 11:30:11 -07:00
Kareem
7e4ec84124
Add macros for legacy get_digit functions for FIPS/selftest.
2025-06-17 10:12:06 -07:00
Kareem
9c9465aa23
Also account for selftest for mp_get_digit refactor.
2025-06-17 10:12:06 -07:00
Kareem
05aa4f5f08
Make mp_get_digit refactor FIPS friendly.
2025-06-17 10:12:06 -07:00
Kareem
2366718d5a
Add args->input free in FreeSskeArgs.
...
This free is redundant in most cases but it covers the specific
case of using async, exiting SendServerKeyExchange early due to
WANT_WRITE or WC_PENDING_E, then later freeing the async context
without calling SendServerKeyExchange again.
2025-06-17 10:12:06 -07:00
Kareem
304019d28d
Fix inclusion guard around wc_RsaSSL_Verify.
...
The current condition of !WOLFSSL_RSA_VERIFY_ONLY doesn't make sense,
as the verify only case will want this function.
Based on the original change and the context, it looks like this was a
typo meant to be !WOLFSSL_RSA_VERIFY_INLINE.
2025-06-17 10:12:06 -07:00
Kareem
e8c110d2ac
Rename get_digit* to mp_get_digit* to avoid conflicts with other functions named get_digit.
2025-06-17 10:12:06 -07:00
Kareem
6633b52e28
Don't try to build wc_RsaSSL_Sign in asn.c MakeSignature if RSA public or verify only is enabled.
2025-06-17 10:12:06 -07:00
David Garske
83954100d6
Merge pull request #8812 from kosmax871/tropic01-dev
...
Added crypto callback functions for TROPIC01 secure element
2025-06-17 10:03:18 -07:00
Eric Blankenhorn
9defad0b24
Check for STDC_NO_ATOMICS
2025-06-17 11:40:07 -05:00
Juliusz Sosinowicz
9c54032159
Add bind v9.18.33 testing
2025-06-17 18:38:38 +02:00
David Garske
5e6c1ba05f
Merge pull request #8879 from julek-wolfssl/openssh-10.0p2
...
Updates for OpenSSH 10.0p2
2025-06-17 09:36:45 -07:00
Daniel Pouzzner
d28045daa8
wolfcrypt/test/test.c: fix prime_test() uninitialized data access by wc_FreeRng().
2025-06-17 09:31:19 -05:00
Daniel Pouzzner
3e5e470005
Merge pull request #8876 from philljj/small_drbg_cleanup
...
linuxkm drbg: refactor drbg_ctx clear.
2025-06-16 16:33:57 -05:00
Maxim Kostin
037ccbaa05
Update TROPIC01 integration guide and header file for key slot definitions and datasheet link
2025-06-16 21:12:19 +02:00
David Garske
842e2366e3
Merge pull request #8881 from douzzer/20250615-heapmath-FREE_MP_INT_SIZE
...
20250615-heapmath-FREE_MP_INT_SIZE
2025-06-16 11:46:12 -07:00
David Garske
5151a2297a
Merge pull request #8880 from holtrop/fix-printing-cert-with-empty-issuer-name
...
Fix printing empty names in certificates
2025-06-16 11:37:02 -07:00
Maxim Kostin
cafb1f5fd7
Merge branch 'tropic01-dev' of github.com:kosmax871/wolfssl into tropic01-dev
2025-06-16 20:32:30 +02:00
Maxim Kostin
f865e0de97
improve ED25519 key handling in CryptoCb function
2025-06-16 20:27:15 +02:00
Maxim Kostin
60f442b04e
Fix formatting inconsistencies in README.md
2025-06-16 20:27:15 +02:00
Maxim Kostin
bab7677273
Added AES IV retrieval from TROPIC01 and use of new R-Memory slot definitions
2025-06-16 20:27:15 +02:00
Maxim Kostin
3b198babe3
Add Tropic01_Deinit call in wolfCrypt_Cleanup for proper resource management
2025-06-16 20:27:15 +02:00
Maxim Kostin
172728bf7f
Refactor Tropic01 interface: clean up code formatting and improve function declarations
2025-06-16 20:27:15 +02:00
kosmax871
5696582add
Update README.md
2025-06-16 20:27:15 +02:00
Maxim Kostin
375af753aa
Changes for the PR https://github.com/wolfSSL/wolfssl/pull/8812
2025-06-16 20:27:15 +02:00
Maxim Kostin
2f210b3907
Refactor TROPIC01 integration: update README, enhance pairing key handling, and improve error messages
2025-06-16 20:27:15 +02:00
Maxim Kostin
296bfd258c
README.md added
2025-06-16 20:27:15 +02:00
Maxim Kostin
0eecfbfb35
ed25519 fixes
2025-06-16 20:27:15 +02:00
Maxim Kostin
cd76615e49
added support of ED25519
2025-06-16 20:27:15 +02:00
kosmax871
7c1980fe01
some fixes and updates
2025-06-16 20:27:15 +02:00
kosmax871
b13fdaa05e
Draft of readme.md
2025-06-16 20:27:15 +02:00
kosmax871
5664507e65
Support for static libraries
2025-06-16 20:27:15 +02:00
Maxim Kostin
385be1c08a
added support for Tropic01 crypto callbacks
2025-06-16 20:27:15 +02:00
kosmax871
3da72fb9b6
Merge branch 'wolfSSL:master' into tropic01-dev
2025-06-16 19:30:32 +02:00
Juliusz Sosinowicz
9a576d9e2e
Fix CI failures
2025-06-16 19:07:58 +02:00
Marco Oliverio
e82c099bec
fix indentation
2025-06-16 18:42:17 +02:00
Juliusz Sosinowicz
72db5e5108
Remove NO_FILESYSTEM for CI
2025-06-16 18:06:19 +02:00
Juliusz Sosinowicz
aca6da66f6
Set default seedCb when not FIPS
2025-06-16 17:39:22 +02:00
Josh Holtrop
3bd9b2e0bc
Add generation instructions for empty issuer cert and change expiry to 100 years
2025-06-16 11:39:01 -04:00
JacobBarthelmeh
ce61f0d517
account for Intel RDRAND build without HAVE_HASHDRBG
2025-06-16 09:04:50 -06:00
Marco Oliverio
b1b49c9ffb
dtls13: always send ACKs on detected retransmission
...
Otherwise the connection can stall due the indefinite delay of an explicit ACK,
for exapmle:
-> client sends the last Finished message
<- server sends the ACK, but the ACK is lost
-> client rentrasmit the Finished message
- server delay sending of the ACK until a fast timeout
-> client rentrasmit the Finished message quicker than the server timeout
- server resets the timeout, delaying sending the ACK
-> client rentrasmit the Finished...
2025-06-16 14:19:32 +02:00
Marco Oliverio
509491f554
dtls13: wolfSSL_is_init_finished true after last server ACK
...
Do not consider the handshake finished until the last server ACK.
This way the application knows where to switch from
wolfSSL_negotiate/wolfSSL_connect to wolfSSL_read/wolfSSL_write.
2025-06-16 14:19:31 +02:00
Daniel Pouzzner
d5ce9744a4
linuxkm/lkcapi_sha_glue.c: explicitly free hash state in wrappers.
2025-06-15 14:40:42 -05:00
Daniel Pouzzner
89e51025ab
.wolfssl_known_macro_extras: snip out unneeded entries.
2025-06-15 12:46:44 -05:00
Daniel Pouzzner
e852c090c0
wolfssl/wolfcrypt/integer.h: for heapmath FREE_MP_INT_SIZE(), rather than WC_DO_NOTHING(), conditionally mp_free(), for functional isomorphism with sp_int and tfm MPI lifecycles.
2025-06-15 07:56:25 -05:00
David Garske
05ff12969e
Merge pull request #8864 from kojiws/improve_pkcs12_export_params
...
Apply 16 bytes salt length for PBES2 key encryption on wc_PKCS12_create()
2025-06-13 14:12:37 -07:00
Juliusz Sosinowicz
37554a13db
Updates for OpenSSH 10.0p2
...
- random.c: use getrandom when available and fall back to direct file access
- openssh.yml: run more tests
- openssh.yml: add 10.0p2 and 9.9p2
- configure.ac: detect if `getrandom` is available on the system
- configure.ac: openssh requires WC_RNG_SEED_CB to always use `getrandom` so that the RNG doesn't get killed by SECCOMP
2025-06-13 18:06:19 +02:00
Koji Takeda
ff1baf0ae7
Apply stronger salt length for PBES2
2025-06-14 00:45:03 +09:00
Josh Holtrop
8bde5e6982
Fix printing empty names in certificates
...
The empty-issuer-cert.pem certificate was created with:
wolfssl genkey rsa -size 2048 -out mykey -outform pem -output KEY
wolfssl req -new -days 3650 -key mykey.priv -out empty-issuer-cert.pem -x509
Prior to this fix this command would error printing the certificate:
wolfssl x509 -inform pem -in empty-issuer-cert.pem -text
2025-06-13 11:22:52 -04:00
JacobBarthelmeh
e74214ded0
Merge pull request #8878 from dgarske/fix_pr8867_oscheck
...
Fix for syntax error in os-check.yml
2025-06-13 09:09:27 -06:00
David Garske
8181561f0f
Fix for syntax error in os-check.yml added in PR #8867 .
2025-06-13 07:17:37 -07:00
Daniel Pouzzner
1549425411
Merge pull request #8873 from philljj/fix_fips_enabled
...
linuxkm: don't toggle fips_enabled.
2025-06-13 05:56:52 -05:00
jordan
b6b58a957b
linuxkm: add missing WC_NO_ERR_TRACE.
2025-06-13 01:45:47 -05:00
jordan
bb5291aa5e
linuxkm: don't toggle fips_enabled.
2025-06-13 00:45:12 -05:00
jordan
41965750c8
linuxkm drbg: refactor drbg_ctx clear.
2025-06-12 19:59:19 -05:00
David Garske
6cb0c8513d
Merge pull request #8874 from JacobBarthelmeh/nginx-tests
...
fix for perl module version used with nginx test
2025-06-12 16:09:31 -07:00
JacobBarthelmeh
b78f8a4ed6
fix for perl module version used with nginx test
2025-06-12 15:55:56 -06:00
David Garske
c5e63b84ca
Merge pull request #8840 from douzzer/20250605-linuxkm-DRBG-multithread-round-1
...
20250605-linuxkm-DRBG-multithread-round-1
2025-06-12 13:17:54 -07:00
David Garske
2fc1110a13
Merge pull request #8587 from lealem47/gh8574
...
Fix bug in ParseCRL_Extensions
2025-06-12 12:09:52 -07:00
David Garske
701e3ba64e
Merge pull request #8808 from rlm2002/coverity
...
Coverity: api.c fix
2025-06-12 12:03:14 -07:00
David Garske
bfdce3a345
Merge pull request #8832 from SparkiDev/aarch64_xfence
...
Aarch64 XFENCE
2025-06-12 11:53:55 -07:00
David Garske
6571f42cb9
Merge pull request #8867 from JacobBarthelmeh/rng
...
Improvements to RNG and compatibility layer
2025-06-11 14:31:53 -07:00
Maxim Kostin
abdcf4dbc5
improve ED25519 key handling in CryptoCb function
2025-06-11 21:09:22 +02:00
kosmax871
394a25b376
Merge branch 'wolfSSL:master' into tropic01-dev
2025-06-11 21:07:15 +02:00
JacobBarthelmeh
8ee1f8f287
add macro guard on test case
2025-06-11 10:43:47 -06:00
JacobBarthelmeh
675ff71b0b
Merge pull request #8863 from rlm2002/AppleNativeCert
...
Add api unit test for checking domain name
2025-06-11 09:38:08 -06:00
Sean Parkinson
1c85a76ddd
Dilithium/ML-DSA: Fixes for casting down and uninit
2025-06-11 11:14:49 +10:00
Sean Parkinson
d66863d0ac
Aarch64 XFENCE
...
Use sb instruction instead of isb if available.
2025-06-11 09:29:20 +10:00
JacobBarthelmeh
ae87afa677
Merge pull request #8857 from miyazakh/tsip_fix
...
fix TSIP TLS example program
2025-06-10 16:26:34 -06:00
JacobBarthelmeh
47cf634965
add a way to restore previous pid behavior
2025-06-10 16:12:09 -06:00
JacobBarthelmeh
4207affc72
adding additional RAND test cases
2025-06-10 16:01:52 -06:00
Ruby Martin
d0134f2212
coverity: address reuse after free, add NULL checks
2025-06-10 15:33:47 -06:00
Ruby Martin
a7a5062c7a
add api test for checking domain name
...
use SNI example.com in client ssl
2025-06-10 15:22:01 -06:00
JacobBarthelmeh
fbbb6b7707
add mutex locking and compat layer FIPS case
2025-06-10 14:37:11 -06:00
JacobBarthelmeh
31490ab813
add sanity checks on pid with RNG
2025-06-10 14:37:11 -06:00
Hideki Miyazaki
d138c48a00
add TSIP_RSASSA_1024 and TSIP_RSASSA_2048 to known_macro_extras
2025-06-11 04:12:54 +09:00
JacobBarthelmeh
2d892f07eb
Merge pull request #8861 from gasbytes/psk-handshake-failure-fix
...
tls13: clear tls1_3 on downgrade
2025-06-10 10:24:17 -06:00
JacobBarthelmeh
047f0bb5fc
Merge pull request #8847 from gojimmypi/pr-platformio-cert-bundles
...
Improve PlatformIO Certificate Bundle Support
2025-06-10 10:23:07 -06:00
JacobBarthelmeh
eb3c324ea4
Merge pull request #8852 from holtrop/reseed-drbg-in-rand-poll-test
...
Add additional compatibility layer RAND tests
2025-06-10 10:20:46 -06:00
JacobBarthelmeh
94f5948f20
Merge pull request #8858 from rizlik/dtls13_set_epoch_fix
...
dtls13: move Dtls13NewEpoch into DeriveTls13Keys
2025-06-10 09:48:58 -06:00
JacobBarthelmeh
81852e7425
Merge pull request #8865 from SparkiDev/dilithium_fixes_2
...
ML-DSA: fix tests for different configs
2025-06-10 09:43:13 -06:00
Sean Parkinson
cb90b78688
ML-DSA: fix tests for different configs
...
Setting the private key into SSL object requires signing to be
available.
Only enable the parameters that are compiled in.
2025-06-10 20:44:27 +10:00
Josh Holtrop
1c6e3d729a
Check that fork() returns >= 0 in RAND_poll fork test
2025-06-10 06:23:06 -04:00
JacobBarthelmeh
106bcb22d3
Merge pull request #8860 from LinuxJedi/tls13-trusted-ca
...
Allow `trusted_ca_keys` with TLSv1.3
2025-06-09 17:43:44 -06:00
JacobBarthelmeh
4ae8ca03ac
Merge pull request #8859 from kojiws/clarify_supported_pkcs12_enc_algos
...
Clarify supported encryption algorithms on wc_PKCS12_create()
2025-06-09 16:03:53 -06:00
David Garske
587d5c783b
Merge pull request #8862 from JacobBarthelmeh/pqc
...
fix syntax error with pqc yml
2025-06-09 13:03:48 -07:00
Josh Holtrop
133e238359
Wait on child process in RAND_poll fork test
2025-06-09 15:59:22 -04:00
JacobBarthelmeh
496b0911be
fix syntax error with pqc yml
2025-06-09 13:50:00 -06:00
Marco Oliverio
3e6703e1fb
fixup! dtls13: move Dtls13NewEpoch into DeriveTls13Keys
2025-06-09 19:20:06 +02:00
Marco Oliverio
1024bf0109
fixup! dtls13: move Dtls13NewEpoch into DeriveTls13Keys
2025-06-09 18:00:23 +02:00
Reda Chouk
92b6e2f2e9
tls13: clear tls1_3 on downgrade
...
Unset ssl->options.tls1_3 whenever we drop to TLS 1.2 so PSK
handshakes don’t hit -326 VERSION_ERROR.
2025-06-09 17:12:56 +02:00
Maxim Kostin
519b314cf2
Fix formatting inconsistencies in README.md
2025-06-09 17:12:46 +02:00
Marco Oliverio
59ff71f936
fixup! dtls13: move Dtls13NewEpoch into DeriveTls13Keys
2025-06-09 16:11:17 +02:00
Maxim Kostin
7b0b2e9f0c
Added AES IV retrieval from TROPIC01 and use of new R-Memory slot definitions
2025-06-09 16:06:56 +02:00
kosmax871
2da1b4e6b2
Merge branch 'wolfSSL:master' into tropic01-dev
2025-06-09 16:01:23 +02:00
Andrew Hutchings
5e6cb2b0b6
Allow trusted_ca_keys with TLSv1.3
...
It is possible that the client will provied `trusted_ca_keys` during a
TLSv1.3 connection with 1.2 downgrade. wolfSSL would error with
`EXT_NOT_ALLOWED`. The TLSv1.3 spec states that it can be provided and
should be ignored.
ZD 19936
2025-06-09 08:31:54 +01:00
Koji Takeda
0260ff789b
Clarify supported PKCS12 encryption algorithms
2025-06-09 12:03:47 +09:00
Marco Oliverio
c1c1929e55
dtls13: move Dtls13NewEpoch into DeriveTls13Keys
...
Dlts13NewEpoch saves the keys currently derived in the ssl object.
Moving Dtls13NewEpoch inside DeriveTls13Keys avoid the risk of using the wrong
keys when creating a new Epoch.
This fixes at least he following scenario:
- Client has encryption epoch != 2 in the handshake (eg. due to rtx)
- Client derives traffic0 keys after receiving server Finished message
- Client set encryption epoch to 2 again to send the Finished message, this
override the traffic key computed
- Client creates the new epoch with the wrong key
2025-06-09 02:35:29 +02:00
Hideki Miyazaki
eeb3961b6f
fix trailing whitespace
2025-06-07 14:23:59 +09:00
Hideki Miyazaki
0404447bd8
fix typo
2025-06-07 12:46:22 +09:00
Hideki Miyazaki
1f8efc3c14
fix TSIP example
...
fix Client Certificate Verify using RSA sign/verify
2025-06-07 12:38:18 +09:00
Daniel Pouzzner
ae15693fa8
linuxkm/lkcapi_sha_glue.c: in wc_linuxkm_drbg_generate() and wc_linuxkm_drbg_seed(), check retval from wc_LockMutex().
...
wolfcrypt/src/random.c: in Hash_DRBG_Generate(), restore smallstack path for digest[], but use non-smallstack path for WOLFSSL_LINUXKM.
2025-06-07 07:07:20 +04:00
Josh Holtrop
10b3cc8dd2
Add fork test for RAND_poll()
2025-06-06 20:45:01 -04:00
gojimmypi
3254f56d32
Improve PlatformIO Certificate Bundle Support
2025-06-06 15:48:07 -07:00
JacobBarthelmeh
0bac2c2b34
Merge pull request #8846 from lealem47/zd20027
...
Don't include AEAD nonce in decrypted data size
2025-06-06 15:43:20 -06:00
Sean Parkinson
8e9e671a5a
Merge pull request #8853 from JacobBarthelmeh/pqc
...
add macro WOLFSSL_ML_KEM_USE_OLD_IDS to PQC CI test
2025-06-07 07:29:33 +10:00
JacobBarthelmeh
369f9f0339
Merge pull request #8849 from holtrop/reseed-drbg-in-rand-poll
...
Reseed DRBG in RAND_poll()
2025-06-06 11:55:46 -06:00
Maxim Kostin
0fe8fa7645
Add Tropic01_Deinit call in wolfCrypt_Cleanup for proper resource management
2025-06-06 19:46:27 +02:00
JacobBarthelmeh
ae7509e746
Merge pull request #8813 from gojimmypi/espressif-mlkem-support
...
Adjust Espressif Examples for Post Quantum ML-KEM
2025-06-06 11:41:59 -06:00
JacobBarthelmeh
9ffca6b39c
Merge pull request #8822 from kojiws/support_cert_aes_cbc_on_pkcs12_export
...
Support PBE_AES(256|128)_CBC certificate encryptions on wc_PKCS12_create()
2025-06-06 11:35:13 -06:00
JacobBarthelmeh
45306e9378
Merge pull request #8845 from rlm2002/coverityTests
...
Coverity: test adjustments and variable checks
2025-06-06 11:29:56 -06:00
JacobBarthelmeh
8a4200eb31
add macro WOLFSSL_ML_KEM_USE_OLD_IDS to PQC CI test
2025-06-06 11:12:37 -06:00
JacobBarthelmeh
f4821eb0f4
Merge pull request #8827 from SparkiDev/ml_kem_codepoints
...
ML_KEM IDs backward compat
2025-06-06 11:06:15 -06:00
JacobBarthelmeh
570c1fc390
Merge pull request #8824 from JeremiahM37/tlsCurveFix
...
tls fix for set_groups
2025-06-06 10:47:06 -06:00
Josh Holtrop
0c12337194
Reseed DRBG in RAND_poll()
2025-06-06 12:20:58 -04:00
JacobBarthelmeh
bfc55d9016
Merge pull request #8848 from julek-wolfssl/gh/8841
...
dtlsProcessPendingPeer: correctly set the current peer
2025-06-06 09:52:35 -06:00
kosmax871
04a1a3fec7
Merge branch 'wolfSSL:master' into tropic01-dev
2025-06-06 17:51:29 +02:00
JacobBarthelmeh
407a1259af
Merge pull request #8851 from douzzer/20250606-fixes
...
Adjustment for warnings with NO_TLS build and add github actions test
2025-06-06 09:46:42 -06:00
Daniel Pouzzner
efc36655e6
src/internal.c: add pedantic-compatible NO_TLS codepath for cipher_names[] and GetCipherNamesSize().
2025-06-06 18:02:19 +04:00
Daniel Pouzzner
4572dcf9f9
tests/api/test_x509.c: in test_x509_rfc2818_verification_callback(), add dependency on HAVE_MANUAL_MEMIO_TESTS_DEPENDENCIES;
...
wolfcrypt/test/test.c: in lms_test(), fix -Wdeclaration-after-statement;
add .github/workflows/no-tls.yml;
.github/workflows/pq-all.yml: add smallstack scenario.
2025-06-06 17:18:50 +04:00
Sean Parkinson
7eca4fb331
ML_KEM IDs backward compat
...
Allow backward compatibilitly of Hybrid ML_KEM codepoints in TLS with
version before wolfSSL 5.8.0.
When WOLFSSL_ML_KEM_USE_OLD_IDS is defined, it will accept the old
codepoints for P256 with ML-KEM-512, P384 with ML-KEM-768, P521 with
ML-KEM-10124. (Others combinations were not know pre 5.8.0.)
Both old client with new server and new client with new server work with
old codepoints.
2025-06-06 09:17:40 +10:00
JacobBarthelmeh
3ecc58cc0e
Merge pull request #8842 from julek-wolfssl/zd/19966
...
ALT_NAMES_OID: Mark IP address as WOLFSSL_V_ASN1_OCTET_STRING
2025-06-05 17:07:47 -06:00
Juliusz Sosinowicz
736a5e1f89
dtlsProcessPendingPeer: correctly set the current peer
2025-06-06 00:12:38 +02:00
Lealem Amedie
53f3e74bf1
Sniffer: Don't include AEAD nonce in decrypted data size
2025-06-05 14:13:45 -06:00
Juliusz Sosinowicz
edfc5360d4
TLSX_SupportedCurve_Parse: fix commonCurves wouldn't be free'd on error
2025-06-05 22:04:50 +02:00
Juliusz Sosinowicz
0ac6ca3cf7
Fix hard tabs and c++ style comments
2025-06-05 22:04:50 +02:00
Juliusz Sosinowicz
761f0f1d1f
Simplify TLSX_SupportedCurve_Parse
...
Server only uses curves that are supported by both the client and the server. If no common groups are found, the connection will fail in TLS 1.2 and below. In TLS 1.3, HRR may still be used to resolve the group mismatch.
2025-06-05 22:04:49 +02:00
JeremiahM37
a160ba1379
Supported_group unit test fix
2025-06-05 22:04:49 +02:00
JeremiahM37
9d342bae83
unit tests for set_groups curve fix
2025-06-05 22:04:49 +02:00
JeremiahM37
888407e40b
Updated fix for set_groups
2025-06-05 22:04:49 +02:00
JeremiahM37
3c1c4792da
tls fix for set_groups
2025-06-05 22:04:49 +02:00
Ruby Martin
a413be1984
remove null assignment, add null check
2025-06-05 12:25:50 -06:00
Juliusz Sosinowicz
f2584fd5fa
ALT_NAMES_OID: Mark IP address as WOLFSSL_V_ASN1_OCTET_STRING
2025-06-05 19:17:00 +02:00
JacobBarthelmeh
c207e2d198
Merge pull request #8838 from miyazakh/fsp_fix2
...
Fix Renesas SCE on RA6M4
2025-06-05 09:43:05 -06:00
Chris Conlon
e51702043f
Merge pull request #8837 from BridgerVoss/code_cov
...
Unit test for Dh.c code coverage
2025-06-05 09:37:42 -06:00
Chris Conlon
a17b3b4985
Merge pull request #8831 from JeremiahM37/UnitTest
...
Unit test for wolfcrypt pkcs12 file to improve code coverage
2025-06-05 09:30:48 -06:00
JacobBarthelmeh
307840388b
Merge pull request #8786 from SparkiDev/lms_kid
...
LMS: Key ID fixup
2025-06-05 09:22:48 -06:00
Daniel Pouzzner
dbc34352c7
linuxkm/lkcapi_sha_glue.c: in wc_linuxkm_drbg_seed(), prefix the supplied seed with the CPU ID of each DRBG, to avoid duplicate states;
...
wolfcrypt/src/random.c: in Hash_DRBG_Generate(), always put digest[] on the stack even in WOLFSSL_SMALL_STACK configuration (it's only 32 bytes);
configure.ac: default smallstackcache on when linuxkm-defaults.
2025-06-05 16:31:46 +04:00
Daniel Pouzzner
29cf3eb84e
linuxkm/lkcapi_sha_glue.c: refactor DRBG wrapper to instantiate one DRBG per core, to relieve contention.
2025-06-05 09:18:18 +04:00
Sean Parkinson
fbc483e23a
Merge pull request #8833 from rlm2002/AppleNativeCert
...
domain name policy for WOLFSSL_APPLE_NATIVE_CERT_VALIDATION
2025-06-05 12:22:20 +10:00
Brett
89be92f1a8
formatting
2025-06-04 18:29:05 -06:00
Koji Takeda
1f78923590
Add a test for mixture of algorithms
2025-06-05 09:26:44 +09:00
Sean Parkinson
640b060792
LMS: Key ID fixup
...
Fix implementation for extracting from private key data.
Add implementation that gets Key ID from wc_LmsKey.
2025-06-05 10:25:47 +10:00
Brett
0e2a3fd0b6
add missing error trace macro
2025-06-04 16:56:16 -06:00
JeremiahM37
a6580d3916
Unit test for wolfcrypt pkcs12 file to improve code coverage
2025-06-04 16:01:35 -06:00
Bridger Voss
80c6ac141a
Unit test for Dh.c wc_DhSetNamedKey code coverage
2025-06-04 15:48:52 -06:00
Brett
bc8eeea703
prevent apple native cert validation from overriding error codes other than ASN_NO_SIGNER_E
2025-06-04 15:48:15 -06:00
Chris Conlon
50471342b3
Merge pull request #8819 from sebastian-carpenter/asn-allow-0-serial-make-check-fail
...
WOLFSSL_ASN_ALLOW_0_SERIAL not handled in make check
2025-06-04 13:39:55 -06:00
Sebastian Carpenter
a29d12fd3f
WOLFSSL_ASN_ALLOW_0_SERIAL not handled in make check
...
test_MakeCertWith0Ser needed an extra #define check for WOLFSSL_ASN_ALLOW_0_SERIAL. Previously, it was validating that a 0 serial should not work -> now it validates that a 0 serial does work.
2025-06-04 12:21:41 -06:00
Lealem Amedie
02a49693e2
Fix bug in ParseCRL_Extensions
2025-06-04 10:23:53 -06:00
Koji Takeda
7c33096398
Support PBE_AES256_CBC and PBE_AES128_CBC cert encryption on wc_PKCS12_create()
2025-06-04 16:43:30 +09:00
Hideki Miyazaki
e633dd7537
trailing whitespace
2025-06-04 13:41:01 +09:00
Hideki Miyazaki
4aea2a1cd2
Update README to add SEGGER_RTT control block
2025-06-04 13:41:01 +09:00
Hideki Miyazaki
8445e66ceb
Update signed certificate
2025-06-04 13:41:01 +09:00
Hideki Miyazaki
6d2a8b3f4c
ready-for-use flag fix
2025-06-04 13:41:01 +09:00
Sean Parkinson
7898823d42
Merge pull request #8834 from JacobBarthelmeh/sp_int
...
Comment to avoid older versions of clang-tidy false positive
2025-06-04 11:15:54 +10:00
JacobBarthelmeh
c1b683f307
add clang-tidy lint comment to avoid false positive
2025-06-03 14:44:01 -06:00
Ruby Martin
9864959e41
create policy for WOLFSSL_APPLE_NATIVE_CERT_VALIDATION, domain name
...
checking
2025-06-03 10:08:58 -06:00
JacobBarthelmeh
b34fd2f685
Merge pull request #8829 from gojimmypi/pr-espressif-time-correction
...
Correct Espressif default time setting
2025-06-02 17:03:06 -06:00
gojimmypi
a9db6d08f7
Adjust Espressif Examples for Post Quantum ML-KEM
2025-06-02 15:11:53 -07:00
gojimmypi
1aa97a9070
Correct Espressif default time setting
2025-06-02 15:04:49 -07:00
Maxim Kostin
e635afd26a
Refactor Tropic01 interface: clean up code formatting and improve function declarations
2025-06-02 20:12:41 +02:00
JacobBarthelmeh
ecb8cb744e
Merge pull request #8799 from dgarske/csharp_wince_unicode
...
Fix issue with CSharp and Windows CE with conversion of ASCII and Unicode
2025-06-02 10:39:23 -06:00
kosmax871
66b0a5bd02
Merge branch 'wolfSSL:master' into tropic01-dev
2025-06-01 09:35:34 +02:00
David Garske
30490f9650
Merge pull request #8828 from douzzer/20250531-wc_linuxkm_fpu_state_assoc-optimize
...
20250531-wc_linuxkm_fpu_state_assoc-optimize
2025-05-31 09:23:59 -07:00
Daniel Pouzzner
8c33f47a85
linuxkm/x86_vector_register_glue.c: fix overhead in wc_linuxkm_fpu_state_assoc() from pointless full searches of wc_linuxkm_fpu_states.
2025-05-31 00:23:32 -05:00
Daniel Pouzzner
a6e9bd73e4
Merge pull request #8803 from dgarske/csr_nomalloc
...
Refactor to support CSR generation and signing with `WOLFSSL_NO_MALLOC`
2025-05-30 18:05:25 -05:00
philljj
316681be2a
Merge pull request #8826 from douzzer/20250530-ML-KEM-WC_SHA3_NO_ASM
...
20250530-ML-KEM-WC_SHA3_NO_ASM
2025-05-30 16:25:48 -05:00
Daniel Pouzzner
dd6e6015ea
wolfcrypt/src/wc_mlkem.c: add setup for WC_MLKEM_NO_ASM.
2025-05-30 14:51:52 -05:00
Daniel Pouzzner
0bdf8b54db
wolfssl/wolfcrypt/sha3.h: in asm prototypes section, snip out redundant prototypes for BlockSha3(), and add indentation for clarity.
2025-05-30 14:16:25 -05:00
Daniel Pouzzner
8256e42178
.github/workflows/wolfCrypt-Wconversion.yml: fix apt-get to update first.
2025-05-30 13:56:14 -05:00
Daniel Pouzzner
6a5dc482fd
linuxkm/Kbuild: set OBJECT_FILES_NON_STANDARD=y for wolfcrypt/src/wc_mlkem_asm.o ("'naked' return found").
2025-05-30 13:39:33 -05:00
Daniel Pouzzner
8f347e68f5
wolfcrypt/src/wc_mlkem_poly.c and configure.ac: add support for WC_MLKEM_NO_ASM, and add gates to support WC_SHA3_NO_ASM;
...
wolfcrypt/src/sha3.c and wolfssl/wolfcrypt/sha3.h: BlockSha3() now always WOLFSSL_LOCAL (never static) to support calls from MLKEM implementation.
2025-05-30 13:31:40 -05:00
Maxim Kostin
22a4cf2422
Merge branch 'tropic01-dev' of github.com:kosmax871/wolfssl into tropic01-dev
2025-05-30 15:31:47 +02:00
Maxim Kostin
698ca29326
Changes for the PR https://github.com/wolfSSL/wolfssl/pull/8812
2025-05-30 11:21:28 +02:00
Daniel Pouzzner
5c21551808
Merge pull request #8816 from philljj/crypto_sig_sign_ret_value
...
linuxkm rsa: fix ret value usage for crypto_sig_sign.
2025-05-29 22:44:13 -05:00
philljj
9bd58344d9
Merge pull request #8817 from douzzer/20250529-WC_SHA3_NO_ASM
...
20250529-WC_SHA3_NO_ASM
2025-05-29 22:24:36 -05:00
David Garske
165f868be1
Fix for warning: ‘free’ called on unallocated object ‘buf’.
2025-05-29 17:15:55 -07:00
Daniel Pouzzner
aeae9cb3b6
Merge pull request #8807 from philljj/linuxkm_ecdsa_small_cleanup
...
linuxkm ecdsa: small debug msg cleanup.
2025-05-29 17:16:40 -05:00
jordan
0b64a5549c
linuxkm rsa: fix ret value usage for crypto_sig_sign.
2025-05-29 16:22:40 -05:00
Daniel Pouzzner
245042a342
add WC_SHA3_NO_ASM, mainly for the benefit of linuxkm-defaults and KASAN compatibility.
2025-05-29 16:21:34 -05:00
philljj
429ed8d0be
Merge pull request #8814 from douzzer/20250529-linuxkm-fix-AesGcmCrypt_1-no-stream
...
20250529-linuxkm-fix-AesGcmCrypt_1-no-stream
2025-05-29 14:36:07 -05:00
Daniel Pouzzner
4d19f55c3f
linuxkm/lkcapi_aes_glue.c: in AesGcmCrypt_1(), in !WOLFSSL_AESGCM_STREAM version, don't call skcipher_walk_done(&sk_walk, ...) -- doesn't work, and not needed.
2025-05-29 12:10:02 -05:00
kosmax871
daf5d4b015
Update README.md
2025-05-29 12:43:52 +02:00
Maxim Kostin
7e25669e6f
Refactor TROPIC01 integration: update README, enhance pairing key handling, and improve error messages
2025-05-29 12:25:12 +02:00
Daniel Pouzzner
2a9269e654
Merge pull request #8796 from philljj/linuxkm_rsa_sig
...
linuxkm rsa: add sig_alg support for linux 6.13
2025-05-29 01:15:13 -05:00
philljj
8ce0a3bf83
Merge pull request #8810 from douzzer/20250528-linuxkm-aes-kmemleaks
...
20250528-linuxkm-aes-kmemleaks
2025-05-28 19:45:49 -05:00
David Garske
18aab1a883
Further improvements to MultiByte and WideChar conversions.
2025-05-28 15:35:10 -07:00
Daniel Pouzzner
5c0a278c7f
linuxkm/lkcapi_aes_glue.c: add error path cleanups for dangling skcipher_walks.
2025-05-28 16:30:43 -05:00
David Garske
5c82757eb4
Merge pull request #8809 from douzzer/20250528-fix-mldsa_nosign
...
20250528-fix-mldsa_nosign
2025-05-28 14:12:06 -07:00
Daniel Pouzzner
b9ef6c583a
wolfcrypt/test/test.c: in test_dilithium_decode_level(), on early malloc failure, stay in the flow to assure cleanup;
...
.wolfssl_known_macro_extras: remove unneeded entry for WOLFSSL_DILITHIUM_VERIFY_NO_MALLOC.
2025-05-28 12:48:36 -05:00
Maxim Kostin
1c45d155d1
README.md added
2025-05-28 19:01:12 +02:00
jordan
7212fd0483
linuxkm ecdsa: small debug msg cleanup.
2025-05-28 11:43:44 -05:00
Sean Parkinson
8ea01056c3
Merge pull request #8788 from julek-wolfssl/gh/8765
...
tls13: handle malformed CCS and CCS before CH
2025-05-28 09:45:09 +10:00
David Garske
3032e977a8
Merge pull request #8802 from kojo1/csharp
...
fix C# Release build
2025-05-27 15:46:28 -07:00
David Garske
6de7bb74ed
Merge pull request #8787 from julek-wolfssl/refactor-GetHandshakeHeader
...
Refactor GetHandshakeHeader/GetHandShakeHeader into one
2025-05-27 15:26:24 -07:00
David Garske
482f2bdd2a
Refactor to support CSR generation and signing with WOLFSSL_NO_MALLOC. Also for DSA. Don't test no malloc with ECC custom curves.
2025-05-27 14:51:16 -07:00
Sean Parkinson
71a9e48701
Merge pull request #8801 from rlm2002/coverity
...
coverity: misc changes to api.c
2025-05-28 07:28:40 +10:00
Daniel Pouzzner
8179367412
Merge pull request #8798 from dgarske/mldsa_nosign
...
Fix for ML-DSA with `WOLFSSL_DILITHIUM_NO_SIGN`
2025-05-27 14:44:44 -05:00
Maxim Kostin
0f2d965d81
ed25519 fixes
2025-05-27 21:28:59 +02:00
Ruby Martin
2eddc32eed
coverity: fix use after free, improper use of negative value, initialize src variable
2025-05-27 09:43:44 -06:00
Maxim Kostin
7696e33d7d
added support of ED25519
2025-05-26 21:58:06 +02:00
Sean Parkinson
6c7edeba38
Merge pull request #8800 from douzzer/20250523-WC_NID_netscape_cert_type
...
20250523-WC_NID_netscape_cert_type
2025-05-26 08:19:22 +10:00
kosmax871
6f48851862
some fixes and updates
2025-05-25 20:43:56 +02:00
Takashi Kojo
7b8f30bb25
fix Release build
2025-05-24 14:03:55 +09:00
jordan
da9410565d
linuxkm rsa: km_pkcs1_sign should return sig_len on success.
2025-05-23 22:29:16 -05:00
Daniel Pouzzner
ec842be582
wolfssl/wolfcrypt/asn.h: add a real value for WC_NID_netscape_cert_type.
2025-05-23 14:05:51 -05:00
Juliusz Sosinowicz
2ec6b92b41
tls13: handle malformed CCS and CCS before CH
...
- fix incorrect alert type being sent
- error out when we receive a CCS before a CH
- error out when we receive an encrypted CCS
2025-05-23 15:04:22 +02:00
Sean Parkinson
999641d9b1
Merge pull request #8642 from rizlik/dtls_no_span_records
...
DTLS: drop records that span datagrams
2025-05-23 14:57:24 +10:00
David Garske
db0b0e28d2
Fix issue with CSharp and Windows CE with conversion of ASCII->Unicode and Unicode->ASCII with odd length and extra null terminator.
2025-05-22 16:34:54 -07:00
Sean Parkinson
d1312c87bb
Merge pull request #8792 from rlm2002/coverity-src
...
Coverity: remove dead code issue in ssl.c
2025-05-23 09:27:39 +10:00
Sean Parkinson
2ecd4d75e3
Merge pull request #8795 from dgarske/stm32_aes_gcm_oldcube
...
Fix for STM32 AES GCM and older STM32Cube HAL that does not support `HeaderWidthUnit`
2025-05-23 08:00:35 +10:00
Sean Parkinson
fb6f0c8b73
Merge pull request #8797 from douzzer/20250522-FIPS-v5-no-implicit-DES
...
20250522-FIPS-v5-no-implicit-DES
2025-05-23 07:50:34 +10:00
David Garske
607d7489bc
Add no malloc support for Dilithium tests. Fixes for WOLFSSL_DILITHIUM_NO_ASN1.
2025-05-22 14:34:34 -07:00
Ruby Martin
5352e100db
Add NO_OLD_TLS macroguard, remove dead code
2025-05-22 14:21:38 -06:00
Daniel Pouzzner
b06a921697
tests/api.c: add missing NO_SHA gates in test_wc_PKCS12_create().
2025-05-22 14:56:31 -05:00
David Garske
d0085834cd
Fix for ML-DSA with WOLFSSL_DILITHIUM_NO_SIGN. ZD 19948.
2025-05-22 12:36:46 -07:00
Daniel Pouzzner
7e9460c377
configure.ac: remove implicit enablements of DES/DES3 on FIPS v5+.
2025-05-22 14:19:28 -05:00
jordan
402ebec3b7
linuxkm rsa: comments, cleanup work buffer useage.
2025-05-22 11:07:36 -05:00
kosmax871
b366f814c7
Draft of readme.md
2025-05-22 14:40:11 +02:00
kosmax871
95007de18a
Support for static libraries
2025-05-22 14:22:40 +02:00
Sean Parkinson
807e95f35f
Merge pull request #8785 from julek-wolfssl/checkGroup
...
TLSX_UseSupportedCurve: Check group correctness outside of TLS 1.3 too
2025-05-22 14:10:14 +10:00
David Garske
cc78e3f5d1
Fix for older STM32Cube HAL that does not support hcryp->Init.HeaderWidthUnit. ZD 19926.
2025-05-21 16:42:52 -07:00
Sean Parkinson
9fdb40caa4
Merge pull request #8790 from philljj/fix_coverity
...
coverity: misc fixes
2025-05-22 08:40:59 +10:00
Sean Parkinson
85a4e34705
Merge pull request #8782 from kojiws/support_aes_cbc_pkcs12_export
...
Support PBE_AES(256|128)_CBC key encryptions on wc_PKCS12_create()
2025-05-22 08:39:11 +10:00
Sean Parkinson
2398a94cf8
Merge pull request #8784 from rlm2002/coverity
...
coverity: init dgst variable test_sha3.c and issues in api.c
2025-05-22 08:34:11 +10:00
Sean Parkinson
005ce08380
Merge pull request #8794 from kareem-wolfssl/multiFixes
...
Add missing DH_MAX_SIZE define for FIPS, correct wolfssl.rc FILETYPE to VFT_DLL
2025-05-22 08:26:24 +10:00
jordan
54104887ca
linuxkm rsa: clean up duplicate code.
2025-05-21 16:59:02 -05:00
jordan
d396987863
linuxkm rsa: don't forget to unregister pkcs1pad akcipher.
2025-05-21 16:32:39 -05:00
jordan
8fef82cc59
linuxkm rsa: linux 6.13 support.
2025-05-21 16:07:46 -05:00
Kareem
08f063d8b3
Correct wolfssl.rc FILETYPE to VFT_DLL. It was previously set to 0x7L which is VFT_STATIC_LIB.
2025-05-21 12:34:09 -07:00
Kareem
4d63d7dedf
Fix missing DH_MAX_SIZE define when building FIPS 140-3 with OpenSSL compatibility layer dh.h.
2025-05-21 12:33:37 -07:00
philljj
be5b62b1a1
Merge pull request #8791 from douzzer/20250521-fix-WC_SIPHASH_NO_ASM
...
20250521-fix-WC_SIPHASH_NO_ASM
2025-05-21 12:23:46 -05:00
Daniel Pouzzner
e2def987d4
wolfcrypt/src/siphash.c: for WC_SIPHASH_NO_ASM, don't define WOLFSSL_NO_ASM if it's already defined.
2025-05-21 10:03:10 -05:00
Ruby Martin
a170624118
coverity: init dgst variable test_sha3.c
...
improper use of neg val api.c
copy-paste error in test_wolfSSL_PEM_read_bio_ECPKParameters
2025-05-21 08:29:44 -06:00
Sean Parkinson
dfe0684bc7
Merge pull request #8789 from douzzer/20250520-WC_SIPHASH_NO_ASM
...
20250520-WC_SIPHASH_NO_ASM
2025-05-21 07:29:53 +10:00
Daniel Pouzzner
a01fb2a61c
wolfcrypt/src/siphash.c: honor WC_SIPHASH_NO_ASM; configure.ac: add -DWC_SIPHASH_NO_ASM when ENABLED_LINUXKM.
2025-05-20 13:03:58 -05:00
Juliusz Sosinowicz
5e7ef142e8
Refactor GetHandshakeHeader/GetHandShakeHeader into one
2025-05-20 13:23:14 +02:00
jordan
c619c19a1d
asn: add underflow check to idx.
2025-05-19 19:04:27 -05:00
Maxim Kostin
cbcd7bca2c
added support for Tropic01 crypto callbacks
2025-05-19 21:41:49 +02:00
Koji Takeda
3666851589
Support PBE_AES256_CBC and PBE_AES128_CBC key encryption on wc_PKCS12_create()
2025-05-19 22:26:46 +09:00
Juliusz Sosinowicz
83ce63ac1a
TLSX_UseSupportedCurve: Check group correctness outside of TLS 1.3 too
2025-05-19 14:19:59 +02:00
Marco Oliverio
cbe1fb2c62
dtls: drop DTLS messages that span across datagrams
...
A new macro "WOLFSSL_DTLS_RECORDS_CAN_SPAN_DATAGRAMS" restores the old
behaviour.
2025-05-19 10:28:13 +02:00
Marco Oliverio
23b73bb298
test_memio: preserve write boundaries in reads
2025-05-19 10:25:24 +02:00
Marco Oliverio
80bdd1736a
internal: refactor out Decryption in DoDecrypt function
...
To uniform error handling for the SanityCheckCipherText check.
2025-05-19 10:25:24 +02:00
JacobBarthelmeh
05bc7e0d2f
Merge pull request #8783 from douzzer/20250516-remove-implicit-WOLFSSL_DEBUG_CERTIFICATE_LOADS
...
20250516-remove-implicit-WOLFSSL_DEBUG_CERTIFICATE_LOADS
2025-05-16 17:06:18 -06:00
Daniel Pouzzner
3ab16257b0
wolfssl/wolfcrypt/logging.h: don't define WOLFSSL_DEBUG_CERTIFICATE_LOADS just because defined(DEBUG_WOLFSSL).
2025-05-16 16:53:10 -05:00
Daniel Pouzzner
4495da457a
Merge pull request #8778 from rlm2002/ghi8772
...
add NULL reference checks to RSA functions
2025-05-16 16:41:43 -05:00
Ruby Martin
7ae2c24ac4
add NULL reference checks to RSA functions
2025-05-16 14:00:35 -06:00
Daniel Pouzzner
91af9073b0
Merge pull request #8777 from rizlik/dtls_reject_v11
...
Drop DTLS packets with bogus minor version number
2025-05-16 14:45:25 -05:00
Daniel Pouzzner
e67536cb15
Merge pull request #8775 from rlm2002/coverity
...
Coverity: address uninitialized scalar variable issues
2025-05-16 14:44:38 -05:00
Daniel Pouzzner
56b43e5948
Merge pull request #8776 from anhu/no_server_with_opensslall
...
Allow tests to build with opensslall and no server.
2025-05-16 13:28:48 -05:00
Daniel Pouzzner
5abe5df498
Merge pull request #8760 from miyazakh/benchmark_up
...
Guard some benchmark tests by NO_SW_BENCH
2025-05-16 12:42:59 -05:00
Kaleb Himes
25e3a2d34f
Merge pull request #8780 from douzzer/20250515-fips-armasm-fixes
...
20250515-fips-armasm-fixes
2025-05-16 11:12:16 -06:00
David Garske
69ae36a1b6
Merge pull request #8781 from night1rider/zephyr-mlkem-update
...
updating kyber to mlkem arm file for zephyr
2025-05-16 09:21:19 -07:00
Ruby Martin
e998a4c2fc
fix off-by-one error in asn.c
2025-05-16 08:26:19 -06:00
night1rider
229141fd51
updating kyber to mlkem arm file for zephyr
2025-05-15 21:55:36 -06:00
Daniel Pouzzner
77bebff341
fixes for armasm:
...
configure.ac: set DEFAULT_ENABLED_ALL_ASM=no if FIPS <v6 and not on amd64 (i.e. if ARM);
tests/api/test_sha256.c: skip test_wc_Sha256_Flags() and test_wc_Sha224_Flags() if armasm and FIPS <v7;
wolfssl/wolfcrypt/settings.h: define WOLFSSL_SP_INT_DIGIT_ALIGN for ARM (needed on BE, and no effect on LE).
2025-05-15 21:20:10 -05:00
Daniel Pouzzner
8a8a2b5bb1
.github/workflows/smallStackSize.yml: don't install multilib (not needed).
2025-05-15 21:13:50 -05:00
Ruby Martin
2940a16c10
coverity: initialize variables for api.c, test_digest.h, and test_sha3.c
2025-05-15 16:55:34 -06:00
David Garske
081b8397c0
Merge pull request #8779 from douzzer/20250515-smallstack-refactors-and-tests
...
20250515-smallstack-refactors-and-tests
2025-05-15 15:02:58 -07:00
Daniel Pouzzner
401868908a
add .github/workflows/smallStackSize.yml;
...
smallstack refactors in
* wolfcrypt/src/asn.c : wc_GetSubjectPubKeyInfoDerFromCert(),
* wolfcrypt/src/dilithium.c : dilithium_sign_with_seed_mu(),
* wolfcrypt/src/ecc.c : wc_ecc_mulmod_ex2(),
* wolfcrypt/src/wc_mlkem.c : mlkemkey_decapsulate(),
* and wolfcrypt/src/wc_mlkem_poly.c : mlkem_gen_matrix_k*_avx2() and mlkem_get_noise_k2_avx2();
wolfcrypt/test/test.c: in TEST_PASS(), fix STACK_SIZE_CHECKPOINT_WITH_MAX_CHECK to honor TEST_ALWAYS_RUN_TO_END.
2025-05-15 15:28:11 -05:00
David Garske
a1b644202c
Merge pull request #8759 from anhu/index_idx
...
Rename variable index to idx to avoid conflicting declaration.
2025-05-15 11:01:27 -07:00
David Garske
63c3c547b6
Merge pull request #8768 from lealem47/zd19853
...
Add sniffer cleanup API's
2025-05-15 11:01:19 -07:00
David Garske
c13be21a90
Merge pull request #8755 from AlexLanzano/pqc-gcc-error
...
Remove redefinition of MlKemKey and Fix build issue in benchmark
2025-05-15 11:00:40 -07:00
Marco Oliverio
22f41a8dbb
Drop DTLS packets with bogus minor version number
2025-05-15 19:50:36 +02:00
Andrew Hutchings
6790c95e94
Merge pull request #8745 from dgarske/stm32_crypt_header_width
...
Fix edge case issue with STM32 AES GCM auth padding
2025-05-15 16:51:52 +01:00
Anthony Hu
a613fc28d6
Allow tests to build with opensslall and no server.
2025-05-15 11:18:15 -04:00
David Garske
2ac4be3f22
Merge pull request #8773 from douzzer/20250514-linuxkm-and-sp-tweaks
...
20250514-linuxkm-and-sp-tweaks
2025-05-14 19:54:48 -07:00
Daniel Pouzzner
baaab4ccac
Merge pull request #8722 from anhu/undef_def
...
Do not allow define of max to interfere with pthreads
2025-05-14 18:44:57 -05:00
Daniel Pouzzner
c201006a26
wolfcrypt/src/sp_int.c: move setup for -Wno-array-bounds when WOLFSSL_SP_DYN_STACK, to follow sp_int.h include.
2025-05-14 18:20:08 -05:00
Anthony Hu
a814683684
Rename variable index to idx to avoid conflicting declaration.
2025-05-14 18:26:37 -04:00
Daniel Pouzzner
c8b507d246
wolfssl/wolfcrypt/sp_int.h: refactor SP_WORD_SIZEOF as a simple numeric literal, and use them for XALIGNED() for Windows portability.
2025-05-14 16:54:49 -05:00
Daniel Pouzzner
55bbd84445
wolfssl/wolfcrypt/sp_int.h and wolfcrypt/src/sp_int.c: add WOLFSSL_SP_DYN_STACK macro to orthogonalize gnarly setup logic, and refactor to use it throughout; refactor several more sp_int stack-allocated data buffers as sp_int_digit[]s rather than char[]s.
2025-05-14 15:39:37 -05:00
Daniel Pouzzner
f0f4084f94
linuxkm/lkcapi_dh_glue.c: never install DH/FFDHE on kernel <5.18 -- DH secrets have a different format before that version, and FFDHE (CONFIG_CRYPTO_DH_RFC7919_GROUPS) was introduced in 5.18 and is the only FIPS-allowed DH variant.
2025-05-14 15:39:37 -05:00
David Garske
49d9bfa160
Merge pull request #8758 from bigbrett/exportx509pubkey-api
...
Added new ASN X509 API: `wc_GetSubjectPubKeyInfoDerFromCert`
2025-05-14 12:28:45 -07:00
Lealem Amedie
4af0e14e7b
Add ssl_RemoveSession API
2025-05-14 12:09:41 -06:00
Brett Nicholas
40c9a03ebe
rename function args to match implementation
2025-05-14 11:31:36 -06:00
David Garske
6270429089
Fix STM32MP13x STM32 AES GCM.
2025-05-14 10:27:01 -07:00
David Garske
4fd76dae95
Add portability fix for new INT_MAX required on all TLS limit checking (added in 91aad90c59 Jan 24, 2025).
2025-05-14 10:27:01 -07:00
David Garske
7a936d731d
Fix edge case issue with STM32 AES GCM auth padding. Issue introduced in PR #8584 . Fixes ZD 19783
...
Added way to override STM_CRYPT_HEADER_WIDTH.
2025-05-14 10:27:01 -07:00
David Garske
813e36a823
Merge pull request #8770 from douzzer/20250514-WOLFSSL_DEBUG_PRINTF-C89
...
20250514-WOLFSSL_DEBUG_PRINTF-C89
2025-05-14 08:50:46 -07:00
Alex Lanzano
88ae4266cf
Don't define PQC option strings in benchmark if WOLFSSL_BENCHMARK_ALL is defined
...
This fixes the 'defined but not used' build issue in benchmark.c if any PQC algos are enabled
and WOLFSSL_BENCHMARK_ALL is defined.
2025-05-14 08:54:59 -04:00
Daniel Pouzzner
8035667d9b
wolfssl/wolfcrypt/logging.h and wolfcrypt/src/logging.c: add WOLFSSL_DEBUG_PRINTF_FN and WOLFSSL_DEBUG_PRINTF_FIRST_ARGS, and update refactored wolfssl_log(), for C89 compat.
2025-05-14 03:21:28 -05:00
Daniel Pouzzner
c5021c0690
wolfcrypt/src/ecc.c: fix identicalInnerCondition in ecc_mulmod().
2025-05-14 03:18:35 -05:00
Hideki Miyazaki
9b7a95e338
gurd tests NO_SW_BENCH
2025-05-14 14:52:51 +09:00
David Garske
cd79be4928
Merge pull request #8769 from douzzer/20250513-WOLFSSL_DEBUG_PRINTF-WOLFSSL_DEBUG_CERTIFICATE_LOADS
...
20250513-WOLFSSL_DEBUG_PRINTF-WOLFSSL_DEBUG_CERTIFICATE_LOADS
2025-05-13 21:15:43 -07:00
Daniel Pouzzner
9d722b3a6c
purge baltimore-cybertrust-root.pem from certs/external/include.am and scripts/.
2025-05-13 20:52:08 -05:00
Daniel Pouzzner
55460a5261
wolfssl/wolfcrypt/logging.h and wolfcrypt/src/logging.c: add
...
WOLFSSL_DEBUG_PRINTF() macro adapted from wolfssl_log(), refactor
wolfssl_log() to use it, and move printf setup includes/prototypes from
logging.c to logging.h;
src/ssl_load.c: add source_name arg and WOLFSSL_DEBUG_CERTIFICATE_LOADS clauses
to ProcessBuffer() and ProcessChainBuffer(), and pass reasonable values from
callers;
remove expired "Baltimore CyberTrust Root" from certs/external/ca_collection.pem
and certs/external/baltimore-cybertrust-root.pem.
2025-05-13 20:30:48 -05:00
Lealem Amedie
5a4c1d99a3
Expose RemoveStaleSessions sniffer API
2025-05-13 15:16:02 -06:00
JacobBarthelmeh
336b374b9c
Merge pull request #8753 from dgarske/gcc4_portability
...
Improvements for portability using older gcc 4.8.2
2025-05-13 13:12:31 -06:00
Daniel Pouzzner
5f2a43f01f
Merge pull request #8766 from dgarske/static_ephemeral
...
Fix for Curve25519 and static ephemeral issue with blinding
2025-05-12 15:18:37 -05:00
Brett Nicholas
2151a1b8a1
review comments
2025-05-12 11:43:56 -06:00
David Garske
e09e3f6098
Fix for Curve25519 and static ephemeral issue with curve25519 blinding. Added new test case (used by wolfKeyMgr).
2025-05-12 10:26:31 -07:00
David Garske
ed6f853b9c
Merge pull request #8763 from douzzer/20250511-fixes
...
20250511-fixes
2025-05-12 08:48:37 -07:00
David Garske
110504acd6
Merge pull request #8761 from douzzer/20250510-SP-dyn-stack-tweaks-and-workaround
...
20250510-SP-dyn-stack-tweaks-and-workaround
2025-05-12 08:48:10 -07:00
Anthony Hu
af29a59325
Do not allow define of max to interfere with pthreads
2025-05-12 11:39:07 -04:00
Daniel Pouzzner
e19295bb64
wolfssl/wolfcrypt/settings.h: #define WOLFSSL_CURVE25519_BLINDING if defined(NO_CURVED25519_X64);
...
wolfcrypt/src/curve25519.c: if defined(NO_CURVED25519_X64), #undef USE_INTEL_SPEEDUP;
wolfcrypt/src/fe_operations.c: fixes for -m32 -Wconversions;
.github/workflows/wolfCrypt-Wconversion.yml: add -m32 scenario;
.wolfssl_known_macro_extras: remove unneeded entry for WOLFSSL_CURVE25519_BLINDING.
2025-05-11 12:06:23 -05:00
David Garske
b1cf5df2c2
Merge pull request #8762 from douzzer/20250510-testwolfcrypt-fix-exit-status
...
20250510-testwolfcrypt-fix-exit-status
2025-05-10 11:54:36 -07:00
Daniel Pouzzner
001a5ef897
wolfcrypt/test/test.c: in main(), return (exit with) 0 for success and 1 for failure.
2025-05-10 12:08:50 -05:00
Daniel Pouzzner
5a911f6af0
wolfssl/wolfcrypt/sp_int.h: wc_static_assert(), not static_assert().
2025-05-10 02:16:48 -05:00
Daniel Pouzzner
8410d922db
.wolfssl_known_macro_extras: remove WOLFSSL_CURVE25519_BLINDING (defined in settings.h since aa840f9c94).
2025-05-10 01:31:45 -05:00
Daniel Pouzzner
c967dd2a30
wolfcrypt/src/sp_int.c and wolfssl/wolfcrypt/sp_int.h: add
...
MP_INT_SIZEOF_DIGITS() macro, and use it for stack allocations in DECL_SP_INT()
and DECL_SP_INT_ARRAY();
refactor _sp_submod() to use DECL_SP_INT() rather than DECL_SP_INT_ARRAY() to
work around apparent optimizer bug in gcc-15.
2025-05-10 01:28:17 -05:00
Daniel Pouzzner
d232680e9c
Merge pull request #8749 from philljj/linuxkm_aes_debug_msgs
...
linuxkm aes: add debug msgs.
2025-05-09 16:46:44 -05:00
Brett Nicholas
79f214f73c
add new X509 API: wc_Exportx509PubKeyWithSpki
2025-05-09 14:40:20 -06:00
JacobBarthelmeh
8e0aefd321
Merge pull request #8725 from AlexLanzano/no-malloc-support
...
Add support for no malloc with `wc_CheckCertSigPubKey`
2025-05-09 14:23:47 -06:00
philljj
3d92eb6d2e
Merge pull request #8756 from douzzer/20250509-linuxkm-lkcapi-rsa-pkcs1-precedence
...
20250509-linuxkm-lkcapi-rsa-pkcs1-precedence
2025-05-09 13:59:09 -05:00
David Garske
68b83bfa14
Merge pull request #8711 from JacobBarthelmeh/coverity
...
fix for sanity check on --group with unit test app and null sanity check with des decrypt
2025-05-09 11:41:53 -07:00
David Garske
407efd3c5d
Merge pull request #8710 from JacobBarthelmeh/codesonar
...
ech get length fix and x509 extension print temporary buffer size
2025-05-09 11:41:24 -07:00
David Garske
7cd080b421
Merge pull request #8713 from JacobBarthelmeh/scan
...
use proper heap hint when free'ing CRL in error case
2025-05-09 11:23:20 -07:00
David Garske
0adb6eb788
Merge pull request #8748 from ColtonWilley/pkcs7_x509_store_update
...
Update PKCS7 to use X509 STORE for internal verification
2025-05-09 11:22:53 -07:00
Daniel Pouzzner
b6f6d8ffda
linuxkm/lkcapi_glue.c: reorder registration of AES and SHA algs to put composite first and primitive last, to prevent kernel dynamic synthesis of the composites.
2025-05-09 12:12:15 -05:00
Alex Lanzano
76fd5319d4
Remove redefinition of MlKemKey
...
Removes the redundant typedef of MlKemKey which will break builds on
pre-C11 compilers. KyberKey is defined as a macro for MlKemKey.
2025-05-09 10:42:15 -04:00
Sean Parkinson
9d1bf83a43
Merge pull request #8736 from JacobBarthelmeh/build
...
adjust default build with curve25519
2025-05-09 20:24:53 +10:00
Daniel Pouzzner
707505d31d
linuxkm/lkcapi_glue.c: in linuxkm_lkcapi_register(), register PKCS1 algs before direct_rsa, to prevent kernel from synthesizing conflicting PKCS1 implementations. for good measure, move raw DH after FFDHE too.
2025-05-09 00:40:30 -05:00
David Garske
82cb83abee
Improvements for portability using older gcc 4.8.2 and customer parsing tools.
2025-05-08 17:02:27 -07:00
Sean Parkinson
4f07f6a9c1
Merge pull request #8750 from anhu/crl_RefFree
...
Add missing call to wolfSSL_RefFree in FreeCRL
2025-05-09 08:24:10 +10:00
philljj
96c15b3a87
Merge pull request #8751 from douzzer/20250508-linuxkm-lkcapi-ECDH-never-fips_enabled
...
20250508-linuxkm-lkcapi-ECDH-never-fips_enabled
2025-05-08 14:59:48 -05:00
JacobBarthelmeh
77c0f79cbe
adjust ech get length only case
2025-05-08 13:50:42 -06:00
JacobBarthelmeh
9fb34d76c2
adjust size of temporary buffer
2025-05-08 13:50:42 -06:00
JacobBarthelmeh
6f1fe2e4b9
add sanity check on des cbc decrypt, CID 512990
2025-05-08 13:50:02 -06:00
JacobBarthelmeh
f96e493790
help static analyzer out, CID 516263
2025-05-08 13:50:02 -06:00
JacobBarthelmeh
ea03decf60
fix for --group argument test, CID 516265
2025-05-08 13:50:02 -06:00
JacobBarthelmeh
ae4a4236cc
fix for index value with curve25519
2025-05-08 13:42:02 -06:00
jordan
b3d330258f
linuxkm aes: cleanup.
2025-05-08 14:32:42 -05:00
Daniel Pouzzner
0532df5ce1
configure.ac: further fixes+cleanups for curve25519/ed25519 feature setup. now recognizes =asm as an override optionally preventing implicit noasm (linuxkm), and fixes wrong -DHAVE_CURVE25519 added to flags in FIPS builds.
2025-05-08 12:20:05 -05:00
Daniel Pouzzner
ac7326d272
linuxkm/lkcapi_glue.c: for LINUXKM_LKCAPI_REGISTER_ECDH, always clear fips_enabled (see comment for details).
2025-05-08 12:13:06 -05:00
Anthony Hu
42fb041890
Add missing call to wolfSSL_RefFree in FreeCRL
2025-05-08 13:11:37 -04:00
jordan
49f1725620
linuxkm aes: add debug msgs.
2025-05-08 11:47:20 -05:00
Colton Willey
9e7a4f6518
Update PKCS7 to use X509 STORE for internal verification instead of underlying CM
2025-05-08 09:45:58 -07:00
David Garske
7ff4ada692
Merge pull request #8746 from douzzer/20250507-ed25519-noasm
...
20250507-ed25519-noasm
2025-05-08 08:29:04 -07:00
Daniel Pouzzner
e044ec45b7
.github/workflows/codespell.yml: in skip section, add full paths for new artifacts in examples/asn1/.
2025-05-08 00:41:35 -05:00
Daniel Pouzzner
2e0ada9836
configure.ac: implement support for --enable-ed25519=noasm, and refactor and improve existing support for --enable-curve25519=noasm.
2025-05-07 23:59:58 -05:00
David Garske
c2528d48d7
Fix liboqs builds.
2025-05-07 14:36:55 -07:00
David Garske
18818415d9
Merge pull request #8744 from douzzer/20250507-fips-all
...
20250507-fips-all
2025-05-07 13:56:31 -07:00
JacobBarthelmeh
3f9fe491cc
adjust C# test and set rng with hpke case
2025-05-07 14:33:15 -06:00
Daniel Pouzzner
d3ce45fbfb
clean up Curve25519/Curve448 dependencies in FIPS builds:
...
configure.ac:
* in FIPS setup, fix sensing of ENABLED_CURVE25519 and ENABLED_CURVE448 to prevent noasm sneaking through, and allow fips=dev to enable them via override;
* enable-all enables ECH only if !FIPS;
* enable-all-crypto enables curve25519/curve448 only if !FIPS;
* QUIC implication of ENABLED_CURVE25519 is inhibited if FIPS;
tests/quic.c: add !HAVE_CURVE25519 paths in test_quic_key_share() to allow FIPS QUIC.
2025-05-07 14:34:35 -05:00
David Garske
cdeac13c87
Merge pull request #8742 from gojimmypi/pr-espressif-p4-and-hkdf
...
Espressif HAVE_HKDF for wolfssl_test, explicit ESP32P4
2025-05-07 12:30:54 -07:00
David Garske
72bff7d01e
Lint and overlong.
2025-05-07 12:06:11 -07:00
David Garske
760178c7dc
Improvements to no malloc support in ConfirmSignature for async and non-blocking. Refactor DSA ASN.1 decode in ConfirmSignature. Cleanup indent in types.h. Move struct CertSignCtx to types.h. Move WC_ENABLE_ASYM_KEY_IMPORT and WC_ENABLE_ASYM_KEY_EXPORT to settings.h.
2025-05-07 12:06:09 -07:00
Alex Lanzano
bc6b5598c5
Add NO_MALLOC support for wc_CheckCertSigPugKey
2025-05-07 12:04:38 -07:00
David Garske
1e3718ea7b
Merge pull request #8655 from SparkiDev/asn1_oid_update
...
ASN.1 OIDs and sum: Change algorithm for sum
2025-05-07 11:43:54 -07:00
philljj
36d8298602
Merge pull request #8743 from douzzer/20250807-linuxkm-lkcapi-ecdh-fips-5v15
...
20250807-linuxkm-lkcapi-ecdh-fips-5v15
2025-05-07 12:47:03 -05:00
JacobBarthelmeh
cbc4cba263
set rng when making a curve25519 key and cast type after shift
2025-05-07 11:45:55 -06:00
Daniel Pouzzner
060d4d5ecc
linuxkm/lkcapi_glue.c: on FIPS kernels <5.15, suspend fips_enabled when registering ecdh-nist-p256 and ecdh-nist-p384 to work around wrong/missing attributes/items in kernel crypto manager.
2025-05-07 11:14:24 -05:00
JacobBarthelmeh
eae4005884
Merge pull request #8717 from dgarske/renesas_rx_api
...
Make wc_tsip_* API's public
2025-05-07 09:29:05 -06:00
gojimmypi
ed2c20a3b2
Espressif HAVE_HKDF for wolfssl_test, explicit ESP32P4
2025-05-07 16:38:05 +02:00
Sean Parkinson
5e5f486a4c
Merge pull request #8732 from dgarske/stm32_hash_status
...
Fix for STM32 hash status check logic (also fix NO_AES_192 and NO_AES_256)
2025-05-07 20:56:18 +10:00
Sean Parkinson
4b73e70515
Merge pull request #8706 from dgarske/win_crypt_rng
...
New build option to allow reuse of the windows crypt provider handle …
2025-05-07 20:55:07 +10:00
philljj
a69039b40d
Merge pull request #8740 from douzzer/20250506-linuxkm-lkcapi-default-priority-100000
...
20250506-linuxkm-lkcapi-default-priority-100000
2025-05-06 20:04:19 -05:00
Sean Parkinson
112351667a
ASN.1 OIDs and sum: Change algorithm for sum
...
New sum algorithm has no clashes at this time.
Old algorithm enabled by defining: WOLFSSL_OLD_OID_SUM.
New oid_sum.h file generated with scripts/asn1_oid_sum.pl.
Added bunch of OID names into asn1 example.
2025-05-07 08:32:08 +10:00
Sean Parkinson
d100898e92
Merge pull request #8737 from julek-wolfssl/wc_HKDF_Expand_ex-fix
...
wc_HKDF_Expand_ex: correctly advance the index
2025-05-07 08:23:33 +10:00
Daniel Pouzzner
8a3a5929b8
linuxkm/lkcapi_glue.c: change WOLFSSL_LINUXKM_LKCAPI_PRIORITY from INT_MAX to 100000 to avoid overflows in kernel calculation of priority on constructed algs.
2025-05-06 17:21:35 -05:00
David Garske
6eb8dfb769
Merge pull request #8668 from gojimmypi/pr-arduino-print
...
Fix Arduino progmem print, AVR WOLFSSL_USER_IO
2025-05-06 14:51:12 -07:00
David Garske
213c43b0fc
Merge pull request #8715 from padelsbach/ssl-certman-codesonar
...
Speculative fix for CodeSonar overflow issue in ssl_certman.c
2025-05-06 14:49:57 -07:00
David Garske
1ee954a38c
Merge pull request #8738 from kaleb-himes/refine-module-boundary
...
Refine module boundary based on lab feedback [IG C.K.]
2025-05-06 14:42:57 -07:00
David Garske
05a3557b2b
Merge pull request #8703 from lealem47/zd19592
...
Attempt wolfssl_read_bio_file in read_bio even when XFSEEK is available
2025-05-06 14:42:19 -07:00
David Garske
d04ab3757e
New build option WIN_REUSE_CRYPT_HANDLE to allow reuse of the windows crypt provider handle. Seeding happens on any new RNG or after WC_RESEED_INTERVAL. If using threads make sure wolfSSL_Init() or wolfCrypt_Init() is called before spinning up threads. ZD 19754. Fixed minor implicit cast warnings in internal.c. Add missing hpke.c to wolfssl VS project.
2025-05-06 14:38:02 -07:00
David Garske
602f4a7b05
Merge pull request #8739 from douzzer/20250506-fixes-and-test-coverage
...
20250506-fixes-and-test-coverage
2025-05-06 14:27:38 -07:00
Daniel Pouzzner
982a7600c2
src/tls13.c: in DoTls13ServerHello() WOLFSSL_ASYNC_CRYPT path, fix -Wdeclaration-after-statement caused by fallthrough definition;
...
.github/workflows: update async.yml, multi-arch.yml, multi-compiler.yml, no-malloc.yml, opensslcoexist.yml, and os-check.yml, with -pedantic and related flags, and add --enable-riscv-asm to multi-arch.yml RISC-V scenario;
configure.ac: clarify error message for "SP ASM not available for CPU."
2025-05-06 14:49:32 -05:00
Lealem Amedie
579e22f843
Remove WOLFSSL_NO_FSEEK from known macros
2025-05-06 15:39:18 -04:00
David Garske
25db14f50c
Fix macro typo.
2025-05-06 10:42:09 -07:00
kaleb-himes
654812679b
Refine module boundary based on lab feedback [IG C.K.]
2025-05-06 09:33:36 -06:00
Juliusz Sosinowicz
d82d8a53ef
wc_HKDF_Expand_ex: correctly advance the index
2025-05-06 13:47:54 +02:00
Sean Parkinson
1c0e5af3a4
Merge pull request #8720 from JacobBarthelmeh/xilinx
...
add macro guards for SHA3 test cases to unit tests
2025-05-06 10:50:01 +10:00
Sean Parkinson
428915e492
Merge pull request #8719 from philljj/coverity_april_2025
...
Fix coverity warnings
2025-05-06 10:11:27 +10:00
Sean Parkinson
dfec168402
Merge pull request #8721 from philljj/coverity_misc
...
Coverity misc
2025-05-06 10:04:53 +10:00
JacobBarthelmeh
3819c352e8
Merge pull request #8728 from dgarske/qat_4.28
...
Fixes for Intel QuickAssist latest driver (4.28)
2025-05-05 17:48:49 -06:00
David Garske
219902149e
Fix issue with api.c test_wolfSSL_OBJ and ./certs/test-servercert.p12 that uses DES3 and AES-CBC-256.
2025-05-05 15:55:00 -07:00
David Garske
c2f1563144
Merge pull request #8726 from kareem-wolfssl/zd19786
...
Pass in correct hash type to wolfSSL_RSA_verify_ex.
2025-05-05 15:38:41 -07:00
Daniel Pouzzner
629d812eb3
Merge pull request #8730 from philljj/linuxkm_pkcs1pad_more
...
linuxkm rsa: add more pkcs1pad sha variants
2025-05-05 16:59:29 -05:00
David Garske
751dcdf3df
Improve the hash wait logic by separating the data input ready from the digest calculation complete.
2025-05-05 14:36:36 -07:00
David Garske
0f4ce03c28
Fixes for NO_AES_192 and NO_AES_256. Added CI test. Fixed bad BUILD_ logic for ADH-AES256-GCM-SHA384.
2025-05-05 14:36:36 -07:00
David Garske
e487685d7d
Fix for STM32 Hashing status bit checking logic. ZD 19783. The digest calculation was indicating "not busy" before digest result (DCIS) was finished. This did not show up on most systems because the computation is usually done by the time it reads.
2025-05-05 14:36:36 -07:00
philljj
6296dfdb1e
Merge pull request #8735 from douzzer/20250502-linuxkm-fixes
...
20250502-linuxkm-fixes
2025-05-05 16:29:00 -05:00
David Garske
3d4e89c2ca
Make wc_tsip_* API's public.
2025-05-05 14:02:05 -07:00
David Garske
2c0ca1cacb
Fix for QAT driver QAT.L.4.28.0-00004 icp include path. Fix for CentOS 7 to allow automake 1.13.4 (works fine).
2025-05-05 13:22:54 -07:00
JacobBarthelmeh
aa840f9c94
adjust default build with curve25519
2025-05-05 14:06:44 -06:00
Daniel Pouzzner
c402d7bd94
Merge pull request #8729 from philljj/linuxkm_ecdh_decode_secret
...
Linuxkm ecdh decode secret
2025-05-05 14:59:51 -05:00
David Garske
d5cca9d7c9
Merge pull request #8733 from SparkiDev/riscv_hash_raw_fix
...
RISC-V 64-bit: fix raw hash when using crypto instructions
2025-05-05 12:44:51 -07:00
Kareem
aad15b27a2
Pass in correct hash type to wolfSSL_RSA_verify_ex.
2025-05-05 11:58:26 -07:00
jordan
a341333589
linuxkm rsa: additional pkcs1 sha variants.
2025-05-05 13:50:12 -05:00
jordan
68682f155c
linuxkm ecdh: remove dependency on crypto_ecdh_decode_key.
2025-05-05 13:39:13 -05:00
jordan
efd5405d0e
coverity: fix check_after_deref, assignment_where_comparison_intended, uninit vars, return values, etc.
2025-05-05 13:18:29 -05:00
Daniel Pouzzner
b9b66042d7
wolfssl/wolfcrypt/dh.h: gate in wc_DhGeneratePublic() with WOLFSSL_DH_EXTRA,
...
adding WOLFSSL_NO_DH_GEN_PUB in the unlikely event it needs to be disabled;
configure.ac: in --enable-linuxkm-lkcapi-register section, remove special-case
handling for -DWOLFSSL_DH_GEN_PUB, and add support for
--enable-linuxkm-lkcapi-register=all-kconfig, which disables registration of
any algs that are disabled in the target kernel, and #errors if any algs or
registrations are disabled or incompatible in libwolfssl but enabled in the
target kernel (note, it does not #error for algorithms we don't currently
shim/implement);
linuxkm/lkcapi_glue.c: change default WOLFSSL_LINUXKM_LKCAPI_PRIORITY from 10000
to INT_MAX to make masking impossible;
linuxkm/lkcapi*glue.c: move all remaining algorithm-specific gate setup into the
respective algorithm family files, and in each family file, add
LINUXKM_LKCAPI_REGISTER_ALL_KCONFIG logic to activate shims only if the
corresponding algorithm is activated in the target kernel.
linuxkm/lkcapi_sha_glue.c: fix -Wunuseds in
wc_linuxkm_drbg_default_instance_registered() and wc_linuxkm_drbg_cleanup()
when !LINUXKM_LKCAPI_REGISTER_HASH_DRBG_DEFAULT.
2025-05-05 13:17:06 -05:00
jordan
baa7efa8af
Fix coverity uninit var warnings, add missing priv key ForceZero.
2025-05-05 13:14:39 -05:00
JacobBarthelmeh
203758695f
use proper heap hint when free'ing CRL in error case
2025-05-05 11:21:03 -06:00
JacobBarthelmeh
e233ead7f6
add macro guards for SHA3 test cases
2025-05-05 11:19:21 -06:00
David Garske
9587b7b12e
Merge pull request #8734 from JacobBarthelmeh/libssh2
...
update libssh2 test to use stable-slim instead of test-slim
2025-05-05 09:55:57 -07:00
JacobBarthelmeh
5fbe23cfd9
update libssh2 test to use stable-slim instead of test-slim
2025-05-05 10:09:47 -06:00
Sean Parkinson
3acf3ef3c5
RISC-V 64-bit: fix raw hash when using crypto instructions
...
./configure CC=riscv64-linux-gnu-gcc --host=riscv64 --disable-shared LDFLAGS=--static --enable-riscv-asm=zvkned
Digest state is not always stored in a way that can be directly copied out.
2025-05-03 08:42:17 +10:00
philljj
1075ce8cf4
Merge pull request #8727 from douzzer/20250501-linuxkm-ecdsa-workaround
...
20250501-linuxkm-ecdsa-workaround
2025-05-01 22:44:48 -05:00
Sean Parkinson
aa50cfc92c
Merge pull request #8723 from lealem47/zd19721
...
Sniffer: Add multiple sessions by removing cached check
2025-05-02 08:44:05 +10:00
Daniel Pouzzner
fea5694e1d
linuxkm/lkcapi_glue.c: with kernels <6.3.0, disable kernel fips_enabled mode while registering FIPS ECDSA shims, to work around crypto manager bug (not recognized as FIPS-allowed algorithms).
2025-05-01 16:57:55 -05:00
Daniel Pouzzner
a18a8ced23
linuxkm/lkcapi_*_glue.c: in test harnesses, fix several out-of-order NULLing of PTR_ERR-type pointers in error paths.
2025-05-01 16:55:30 -05:00
philljj
937fb03f05
Merge pull request #8718 from douzzer/20250428-linuxkm-stdrng
...
20250428-linuxkm-stdrng
2025-05-01 15:31:15 -05:00
Lealem Amedie
ac139dfe49
Sniffer: Add multiple sessions by removing cached check
2025-05-01 14:27:35 -04:00
Daniel Pouzzner
5633a2fa76
linuxkm: in configure.ac, fix feature dependency test for --enable-linuxkm-lkcapi-register=stdrng*, and in linuxkm/lkcapi_sha_glue.c, fix PRNG quality test in wc_linuxkm_drbg_startup().
2025-05-01 13:07:23 -05:00
Daniel Pouzzner
1b59bc25d1
linuxkm:
...
in lkcapi_sha_glue.c:
in linuxkm_hmac_setkey_common(), ignore keylength even in FIPS modules (use
wc_HmacSetKey_ex(..., 1)) on kernel < 6.0 to work around crypto manager bug;
in wc_linuxkm_drbg_startup(), add rng workout routine using handle from
crypto_alloc_rng();
in lkcapi_*_glue.c: fix test routines to return valid wolfCrypt error codes
consistently;
in module_hooks.c, implement
* linuxkm_lkcapi_sysfs_install_node(),
* linuxkm_lkcapi_sysfs_deinstall_node(),
* FIPS_rerun_self_test_handler()
and add corresponding setup/teardown in wolfssl_init() and wolfssl_exit();
in lkcapi_glue.c:
refactor linuxkm_lkcapi_sysfs_install and linuxkm_lkcapi_sysfs_deinstall to
use the new helpers;
harden the REGISTER_ALG() and UNREGISTER_ALG() macros and the
linuxkm_lkcapi_register() and linuxkm_lkcapi_unregister() functions, and add
informational messages about number of algs registered/deregistered;
in x86_vector_register_glue.c: fix gate for irq_fpu_usable() workaround to
reflect backporting of fix in >=5.10.180 in 5.10-LTS and >=5.15.39 in 5.15-LTS
linuxkm/lkcapi_glue.c: move WOLFSSL_DEBUG_TRACE_ERROR_CODES coverage for
EINVAL/ENOMEM/EBADMSG to module_hooks.c.
2025-05-01 00:08:32 -05:00
Daniel Pouzzner
273b7fc0da
linuxkm: support DRBG in LKCAPI shim set:
...
* Implement --enable-linuxkm-lkcapi-register=stdrng and =stdrng-default,
LINUXKM_LKCAPI_REGISTER_HASH_DRBG, and
LINUXKM_LKCAPI_REGISTER_HASH_DRBG_DEFAULT. With "_DEFAULT", the DRBG is
installed as the systemwide default stdrng, necessitating
deregister-on-command, described below. Note that get_random_bytes() and the
associated /dev/random and /dev/urandom do not use the default stdrng, and
their back end cannot currently be replaced by a module.
* Add control nodes /sys/module/libwolfssl/install_algs and
/sys/module/libwolfssl/deinstall_algs.
* Add configure option --enable-linuxkm-lkcapi-register=sysfs-nodes-only, and
macro LINUXKM_LKCAPI_REGISTER_ONLY_ON_COMMAND, to inhibit registration at
module load time.
In configure.ac ENABLED_LINUXKM_LKCAPI_REGISTER setup, don't define
WOLFSSL_DH_GEN_PUB in old FIPS, but do define it for =all.
2025-04-29 00:42:15 -05:00
Daniel Pouzzner
4450167ab0
Merge pull request #8707 from philljj/register_dh
...
linuxkm: register dh and ffdhe.
2025-04-28 23:00:17 -05:00
Sean Parkinson
bb9f3c9f9d
Merge pull request #8698 from rlm2002/msys2
...
adjust MSYS CI Build
2025-04-29 09:03:58 +10:00
Sean Parkinson
d8ab66b39a
Merge pull request #8705 from dgarske/stm32_hash
...
Fix for STM32 Hash with IRQ enabled
2025-04-29 09:00:42 +10:00
Sean Parkinson
03ad93f4eb
Merge pull request #8709 from dgarske/win32_wince
...
Fixes to support _WIN32_WCE (VS 2008 with WinCE 6.0/7.0)
2025-04-29 08:59:58 +10:00
Sean Parkinson
2ce7c2ac4c
Merge pull request #8714 from mgrojo/alire-inclusion
...
Ada: prepare inclusion of v5.8.0 in Alire index
2025-04-29 08:58:24 +10:00
jordan
f6f3b0a1ee
linuxkm: register dh and ffdhe.
2025-04-25 21:21:26 -05:00
Paul Adelsbach
b4d94429d1
Speculative fix for CodeSonar overflow issue
2025-04-25 12:58:23 -07:00
mgrojo
e6e64515c7
Ada: prepare inclusion of v5.8.0 in Alire index
2025-04-25 20:56:06 +02:00
David Garske
b077c81eb6
Merge pull request #8712 from JacobBarthelmeh/release
...
prepare for release 5.8.0
2025-04-24 15:10:41 -07:00
JacobBarthelmeh
e4cb69caef
remove trailing space character in changelog
2025-04-24 12:20:23 -07:00
JacobBarthelmeh
9be6a81bab
prepare for release 5.8.0
2025-04-24 10:41:40 -07:00
David Garske
81cd5df263
Fixes to support _WIN32_WCE (VS 2008 with WinCE 6.0/7.0). Should have been part of #8621 .
2025-04-24 08:18:44 -07:00
David Garske
3a1178f71c
Fix for STM32 Hash with NVIC (IRQ) enabled that can cause a DINIS interrupt that does not get cleared. If the HASH NVIC tab has Interrupts enabled it can cause an IRQ to be triggered that is not cleared. This is because the wolfSSL implementation of STM32 Hash does not call the HAL HASH API's and does not use interrupts yet. ZD 19778
2025-04-23 13:55:57 -07:00
JacobBarthelmeh
c22505a71a
Merge pull request #8700 from embhorn/rel_fixes_cs
...
Fixes from CodeSonar report
2025-04-23 11:36:15 -06:00
philljj
204d933f9f
Merge pull request #8702 from douzzer/20250422-linuxkm-tweaks
...
20250422-linuxkm-tweaks
2025-04-22 21:34:13 -05:00
Lealem Amedie
5fe086b388
Skip PKCS8 header check in wc_CreatePKCS8Key with WOLFSSL_NO_ASN_STRICT
2025-04-22 16:58:04 -06:00
Lealem Amedie
882eaa5df8
Attempt wolfssl_read_bio_file in read_bio even when XFSEEK is available
2025-04-22 16:56:32 -06:00
David Garske
68eec91f04
Merge pull request #8701 from JacobBarthelmeh/fuzz
...
init buffer before creating digest value
2025-04-22 15:20:45 -07:00
Daniel Pouzzner
1f9d0b1612
linuxkm/: fix error checking on malloc()ed values (! ptr, not IS_ERR(ptr)).
2025-04-22 17:11:52 -05:00
Daniel Pouzzner
d4fc8c3791
linuxkm/: null out pointers with PTR_ERR()-encoded values before jumping to cleanup;
...
linuxkm/lkcapi_rsa_glue.c: in km_rsa_init(), implement error-path cleanup;
linuxkm/module_hooks.c: nix CONFIG_MODULE_SIG requirement in WOLFCRYPT_FIPS_CORE_DYNAMIC_HASH_VALUE builds;
wolfssl/wolfcrypt/settings.h: in WOLFSSL_LINUXKM setup, define WOLFSSL_ASN_INT_LEAD_0_ANY if LINUXKM_LKCAPI_REGISTER (required for kernel 5.10 crypto manager);
wolfcrypt/src/memory.c: add WC_NO_ERR_TRACE() to mock error returns in SAVE_VECTOR_REGISTERS2_fuzzer().
2025-04-22 16:44:07 -05:00
JacobBarthelmeh
43cdc1be74
init buffer before creating digest value
2025-04-22 14:34:16 -06:00
Eric Blankenhorn
66b9256f86
Fixes from CodeSonar report
2025-04-22 14:43:01 -05:00
Daniel Pouzzner
e6f8de7d31
Merge pull request #8699 from JacobBarthelmeh/bn
...
revert BN_CTX_init stub for older applications
2025-04-22 14:21:01 -05:00
Ruby Martin
a1cb6e5ba5
only test msys system, add buffer typecasts
2025-04-22 12:35:12 -06:00
Daniel Pouzzner
25cd009a42
Merge pull request #8695 from JacobBarthelmeh/coverity
...
null derefernce sanity checks and control flow issue
2025-04-22 11:37:51 -05:00
JacobBarthelmeh
9da9817f89
move test case to the correct location for stub macro guard
2025-04-22 10:09:01 -06:00
JacobBarthelmeh
b22cc12c8d
add missing BN_CTX_init define
2025-04-22 09:29:28 -06:00
JacobBarthelmeh
33da20c3ec
revert BN_CTX_init stub for older applications
2025-04-22 09:22:40 -06:00
David Garske
3ca444e0e1
Merge pull request #8697 from douzzer/20250419-test_dtls13_ack_order-uninited-read
...
20250419-test_dtls13_ack_order-uninited-read
2025-04-19 19:44:35 -07:00
Daniel Pouzzner
bbbed009b2
tests/api/test_dtls.c: fix read of uninited data in test_dtls13_ack_order().
2025-04-19 01:57:51 -05:00
Daniel Pouzzner
9e5c064d5d
Merge pull request #8679 from kojiws/keep_header_on_pkcs12_parse
...
Add wc_PKCS12_parse_ex() to keep PKCS8 header
2025-04-19 01:57:21 -05:00
Daniel Pouzzner
543ba268a4
Merge pull request #8558 from julek-wolfssl/openssh-9.9-fix
...
wolfSSL_EVP_PKEY_cmp: only compare the public keys
2025-04-19 01:51:49 -05:00
philljj
3cdc521d33
Merge pull request #8696 from douzzer/20250418-linuxkm-lkcapi-cleanup
...
20250418-linuxkm-lkcapi-cleanup
2025-04-18 20:19:36 -05:00
Daniel Pouzzner
2e31cad4f6
wolfssl/internal.h: clean up WOLFSSL_TEST_VIS comments and an unneeded attr on GetOutputBuffer().
2025-04-18 18:27:07 -05:00
Daniel Pouzzner
fe244fb41b
linuxkm: clean up LKCAPI glue:
...
typography fixes;
static attr on const byte arrays;
refactor km_ecdsa_verify() to use a single heap allocation;
fix linuxkm_test_ecdsa_nist_driver() to copy sig and hash to a heap allocation before passing to sg_set_buf() (avoids unmapping of rodata);
in linuxkm_test_pkcs1_driver() move hash from stack to heap;
add LINUX_VERSION_CODE >= 5.4 assertion in linuxkm/lkcapi_glue.c;
streamline macro logic in linuxkm/lkcapi_sha_glue.c.
2025-04-18 18:21:57 -05:00
JacobBarthelmeh
d481086910
restore internal hashes pointer on error, CID 515542
2025-04-18 16:52:25 -06:00
JacobBarthelmeh
69a4607f84
null sanity check on arguments in wc_HpkeContextComputeNonce, CID 515543
2025-04-18 16:47:36 -06:00
JacobBarthelmeh
f834b9b08a
add null sanity check to wolfSSL_SESSION_get_max_early_data, CID 516264
2025-04-18 16:31:33 -06:00
JacobBarthelmeh
73c286ae46
fix possible null dereference, CID 518681
2025-04-18 16:02:46 -06:00
JacobBarthelmeh
a21542cdfc
Merge pull request #8689 from julek-wolfssl/gh/8666
...
dtls13: send acks with correct record number order
2025-04-18 15:50:56 -06:00
philljj
c41407111a
Merge pull request #8694 from douzzer/20250411-linuxkm-SHA
...
20250411-linuxkm-SHA
2025-04-18 16:45:55 -05:00
Juliusz Sosinowicz
43c564d48b
dtls13: send acks with correct record number order
2025-04-18 14:56:59 -05:00
Daniel Pouzzner
74232f5fe7
Merge pull request #8631 from julek-wolfssl/gh/8579-2
...
dtls13: additional epoch checks
2025-04-18 14:49:00 -05:00
Daniel Pouzzner
8c0b931459
Merge pull request #8652 from kareem-wolfssl/zd19563_2
...
Add some FPKI test OIDs which are currently being used in DoD JITC certificates.
2025-04-18 14:04:29 -05:00
Daniel Pouzzner
0430d25cfb
linuxkm shims for all SHA and SHA-HMAC flavors.
2025-04-18 11:57:29 -05:00
Daniel Pouzzner
f7407e4065
20250411-linuxkm-SHA checkpoint
2025-04-18 11:57:29 -05:00
gojimmypi
1f88ab58c1
Fix Arduino progmem print, AVR WOLFSSL_USER_IO
2025-04-18 14:29:32 +02:00
Koji Takeda
2e02274be7
Add guard macro
2025-04-18 08:08:25 +09:00
David Garske
1b240e2cbc
Merge pull request #8693 from kareem-wolfssl/forum8313
...
Fix unused function warning for wc_AesDecrypt when building with STM32.
2025-04-17 15:39:32 -07:00
Koji Takeda
039ff1b460
Add wc_PKCS12_parse_ex()
2025-04-18 06:39:16 +09:00
Kareem
645da33176
Fix unused function warning for wc_AesDecrypt when building with STM32.
...
This function is not needed for AES-CCM, as the AES-CCM decrypt function only calls wc_AesEncrypt.
2025-04-17 14:33:44 -07:00
Daniel Pouzzner
5e1f713995
Merge pull request #8691 from lealem47/ecc521_minSz
...
Fix SetMinEccKey_Sz to allow for P-521 minimum
2025-04-17 14:31:56 -05:00
Kareem
038eab61d0
Add additional FPKI test OIDs.
2025-04-17 11:29:36 -07:00
Kareem
686ae22af2
Add additional FPKI test OIDs to FPKI test cert.
2025-04-17 11:14:40 -07:00
Kareem
00a6c3953c
Add some FPKI test OIDs which are currently being used in DoD JITC certificates.
2025-04-17 11:10:35 -07:00
Juliusz Sosinowicz
e709cb4cf2
_Dtls13HandshakeRecv: cast handshakeType
2025-04-17 19:21:59 +02:00
philljj
cb1a35ac7d
Merge pull request #8690 from douzzer/20250417-LINUXKM_DIRECT_RSA
...
20250417-LINUXKM_DIRECT_RSA
2025-04-17 11:26:09 -05:00
Juliusz Sosinowicz
f6f295e29f
fixup! dtls13: additional epoch checks
2025-04-17 18:18:44 +02:00
Daniel Pouzzner
775bbacce6
Merge pull request #8688 from miyazakh/client_pqc_option
...
Make client pqc option consistency with server
2025-04-17 11:18:41 -05:00
Juliusz Sosinowicz
3cba5c6dc1
fixup! dtls13: additional epoch checks
2025-04-17 18:18:01 +02:00
Juliusz Sosinowicz
3f560036d6
dtls13: additional epoch checks
2025-04-17 18:18:01 +02:00
Daniel Pouzzner
b533d082b0
Merge pull request #8678 from embhorn/zd19742
...
Fix types.h for MSVC6.0
2025-04-17 11:12:09 -05:00
Lealem Amedie
1b80c03fe9
Change to short type
2025-04-17 10:05:40 -06:00
Daniel Pouzzner
44adc4a71d
linuxkm/lkcapi_rsa_glue.c: gate LINUXKM_DIRECT_RSA directly on WC_RSA_NO_PADDING;
...
configure.ac: always pass -DWC_RSA_NO_PADDING for --enable-linuxkm-lkcapi-register=rsa or =all.
2025-04-17 10:38:45 -05:00
JacobBarthelmeh
ce67d8cd07
Merge pull request #8687 from douzzer/20250417-fix-test_mldsa_pkcs8
...
20250417-fix-test_mldsa_pkcs8
2025-04-17 08:56:57 -06:00
Daniel Pouzzner
28091e8842
Merge pull request #8685 from philljj/linuxkm_ecdh_forcezero
...
linuxkm ecdh: force zero shared secret buffer, and clear old key.
2025-04-17 09:35:35 -05:00
Lealem Amedie
429f435593
Fix SetMinEccKey_Sz to allow P-521 minimum
2025-04-17 08:22:20 -06:00
Hideki Miyazaki
da2c48fef5
make client pqc option consistency with server
2025-04-17 15:40:27 +09:00
Daniel Pouzzner
5b3e19c1b6
Merge pull request #8686 from miyazakh/oid_collision
...
fix OID collision
2025-04-17 00:54:04 -05:00
Daniel Pouzzner
90f30fd15e
Merge pull request #8623 from SparkiDev/lms_kid_from_privraw
...
LMS: add API to get Key ID from raw private key
2025-04-17 00:49:08 -05:00
Daniel Pouzzner
3fcd3cdb99
tests/api/test_mldsa.c: fix clang-analyzer-core.NullDereference in test_mldsa_pkcs8().
2025-04-17 00:42:11 -05:00
philljj
4906974fad
Merge pull request #8683 from douzzer/20250416-linuxkm-FIPS-wrappers
...
20250416-linuxkm-FIPS-wrappers
2025-04-16 23:18:04 -05:00
David Garske
404fafd598
Merge pull request #8677 from SparkiDev/regression_fixes_17
...
Regression test fixes
2025-04-16 20:20:28 -07:00
David Garske
a66fb123b4
Merge pull request #8684 from SparkiDev/lms_max_levels_1
...
LMS: fix for when WOLFSSL_LMS_MAX_LEVELS is 1
2025-04-16 20:19:40 -07:00
David Garske
a9e2146f06
Merge pull request #8675 from SparkiDev/entropy_memuse_fix
...
Entropy MemUse: fix for when block size less than update bits
2025-04-16 20:18:22 -07:00
David Garske
2ce415c464
Merge pull request #8682 from SparkiDev/sp_ecc_non_block_aligned
...
ECC non-blocking: make sp_ecc_ctx data aligned
2025-04-16 20:17:33 -07:00
Hideki Miyazaki
62f7ff9ec2
fix OID collision
...
fix qt jenkins failure
2025-04-17 11:55:03 +09:00
jordan
57ccabb25c
linuxkm ecdh: force zero shared secret buffer, and clear old key.
2025-04-16 21:15:32 -05:00
Sean Parkinson
62f28759d8
LMS: fix for when WOLFSSL_LMS_MAX_LEVELS is 1
2025-04-17 11:19:41 +10:00
Sean Parkinson
4f3ce188b6
Memory Zero checks: add check call
...
Must check memory is zeroed after Tls13DeriveKey() call.
2025-04-17 10:53:49 +10:00
Sean Parkinson
4c7fb1f428
ECC non-blocking: make sp_ecc_ctx data aligned
...
Align data on 4 byte boundary for ARM chips.
2025-04-17 10:07:58 +10:00
Sean Parkinson
a34284e0a2
Entropy MemUse: support for custom hi res time
...
Call the custom high resolution time function when
CUSTOM_ENTROPY_TIMEHIRES is defined with the function name.
2025-04-17 09:30:29 +10:00
Daniel Pouzzner
78a9cd7c58
linuxkm/module_hooks.c: don't define FIPS_NO_WRAPPERS;
...
linuxkm/lkcapi_ecdh_glue.c: in km_ecdh_compute_shared_secret(), wrap wc_ecc_shared_secret() in PRIVATE_KEY_UNLOCK...PRIVATE_KEY_LOCK.
2025-04-16 18:29:43 -05:00
Daniel Pouzzner
bfab68f40c
Merge pull request #8646 from philljj/register_rsa
...
linuxkm: register rsa
2025-04-16 17:51:20 -05:00
philljj
91cd0e96fa
Merge pull request #8680 from douzzer/20250416-WC_SANITIZE_DISABLE
...
20250416-WC_SANITIZE_DISABLE
2025-04-16 16:56:09 -05:00
Daniel Pouzzner
049c4a8910
wolfssl/wolfcrypt/settings.h: map WC_SANITIZE_{DISABLE,ENABLE}() to kasan_{disable,enable}_current();
...
wolfssl/wolfcrypt/types.h: fallthrough map WC_SANITIZE_{DISABLE,ENABLE}() to WC_DO_NOTHING;
linuxkm/module_hooks.c: add WC_SANITIZE_DISABLE...WC_SANITIZE_ENABLE wrapper around critical span in updateFipsHash().
2025-04-16 15:51:47 -05:00
Juliusz Sosinowicz
257fd17ea4
fixup! wolfSSL_EVP_PKEY_cmp: only compare the public keys
2025-04-16 18:21:55 +02:00
Juliusz Sosinowicz
9b3b874aba
tls13: clear resuming flag when we don't have a way to resume
2025-04-16 18:14:09 +02:00
Juliusz Sosinowicz
290dbaa18e
wolfSSL_EVP_PKEY_cmp: only compare the public keys
2025-04-16 18:14:09 +02:00
jordan
ff93e6d5d4
linuxkm: register rsa.
2025-04-16 09:50:06 -05:00
Eric Blankenhorn
f7ca8237b8
Fix types.h for MSVC6.0
2025-04-16 09:24:46 -05:00
Sean Parkinson
3ac05dea09
Regression test fixes
...
dtls13.c: LowResTimer() not available when NO_ASN_TIME is defined.
api.c: Add certificate and key to use for when only Ed25519 or Ed448.
asn.c: Casts needed for g++ compile.
mem_track.c: Casts needed for g++ compile.
2025-04-16 21:46:48 +10:00
Sean Parkinson
5e8d018ff7
Merge pull request #8659 from kojiws/improve_mldsa_priv_key_import
...
Improve ML-DSA private key import and the test
2025-04-16 18:21:00 +10:00
Koji Takeda
c05c827d6b
Add a space after if and for
2025-04-16 16:26:52 +09:00
Koji Takeda
1646a4b274
Reflect review
2025-04-16 13:46:39 +09:00
Sean Parkinson
f458930d24
Merge pull request #8653 from kareem-wolfssl/zd19696
...
Make trusted_ca_keys check opt-in.
2025-04-16 10:45:01 +10:00
Sean Parkinson
b1aa11d42e
Entropy MemUse: fix for when block size less than update bits
...
When the block size is less than the number of update bits, adding the
update value will make the index larger than ENTROPY_NUM_WORDS.
The update bits, ENTROPY_NUM_UPDATES_BITS, should be less than or equal
to ENTROPY_BLOCK_SZ but is not practical.
Add extra elements to the entropy state to accomadate this.
2025-04-16 10:30:37 +10:00
Daniel Pouzzner
6bf93c93d4
Merge pull request #8594 from julek-wolfssl/nss
...
Implement AES-CTS in wolfCrypt
2025-04-15 18:35:52 -05:00
Daniel Pouzzner
fbc6190752
Merge pull request #8160 from kaleb-himes/OE8-CHECK-IN
...
OE8 check in
2025-04-15 18:13:44 -05:00
Daniel Pouzzner
f6434cf712
Merge pull request #8639 from anhu/cmake_pq
...
Fix building ML-KEM and LMS with cmake
2025-04-15 17:50:42 -05:00
JacobBarthelmeh
d9fd1072a2
Merge pull request #8672 from SparkiDev/asm_fixes_1
...
Various fixes for Aarch64/ARM32/Thumb2 ASM
2025-04-15 14:56:32 -06:00
David Garske
e95fb9c116
Merge pull request #8673 from douzzer/20250415-linuxkm-5v12-disable-ecdh-registration
...
20250415-linuxkm-5v12-disable-ecdh-registration
2025-04-15 11:20:51 -07:00
Daniel Pouzzner
10c1fc1edb
linuxkm/lkcapi_glue.c: inhibit LINUXKM_LKCAPI_REGISTER_ECDH on kernel <5.13 (currently incompatible);
...
.wolfssl_known_macro_extras: fix lexical order.
2025-04-15 12:00:54 -05:00
Sean Parkinson
cf1f8e14ff
Various fixes for Aarch64/ARM32/Thumb2 ASM
...
cpuid.c: hwcaps not used.
thumb2-*: ldm -> LDM
sp_arm32.c: No register assignment, fix sp_*_from_bin
sp_armthumb.c: fix sp_*_from_bin
sp_cotexm.c: fix line lengths, fix sp_*_from_bin
2025-04-15 17:00:06 +10:00
Daniel Pouzzner
b000d7382f
Merge pull request #8671 from SparkiDev/poly1305_aarch64_asm_fix
...
Poly1305 Aarch64 ASM: fix
2025-04-14 22:36:39 -05:00
Daniel Pouzzner
43389b248a
Merge pull request #8621 from dgarske/dotnet35
...
Fixes for building with .NET 3.5
2025-04-14 22:35:28 -05:00
Sean Parkinson
10f0999c21
Poly1305 Aarch64 ASM: fix
...
r^2 may overflow after adding high bits - reduce again.
2025-04-15 11:04:47 +10:00
Anthony Hu
f987478937
github test
2025-04-14 20:53:24 -04:00
David Garske
6d3673a6ec
Merge pull request #8670 from douzzer/20250414-fix-curve255519_der_test-fips-v6
...
20250414-fix-curve255519_der_test-fips-v6
2025-04-14 17:48:09 -07:00
Daniel Pouzzner
4ae057e79f
Merge pull request #8663 from philljj/register_ecdh
...
linuxkm: register ecdh.
2025-04-14 19:04:33 -05:00
Daniel Pouzzner
2ec8e72579
CURVE25519_MAX_KEY_TO_DER_SZ: refactor to macro like other CURVE25519_ constants, and add FIPS clause in curve255519_der_test() to accommodate FIPS v6.
2025-04-14 18:29:22 -05:00
David Garske
42644a55fb
Fixes for building with .NET 3.5 (new WindowsCE macro). Fix for build error with NO_WOLFSSL_MSG_EX. Fix for ECC TFM option (only set with TFM).
2025-04-14 16:07:03 -07:00
Sean Parkinson
9106d1275f
Merge pull request #8651 from billphipps/fix_curve25519_enums
...
Update to expose reasonable DER buffer sizes for Curve25519
2025-04-15 08:34:12 +10:00
Kaleb Himes
6b66149edb
Merge branch 'master' into OE8-CHECK-IN
2025-04-14 15:24:28 -06:00
JacobBarthelmeh
43e68add96
Merge pull request #8669 from douzzer/20250414-can_save_vector_registers_x86-recursive
...
20250414-can_save_vector_registers_x86-recursive
2025-04-14 15:03:33 -06:00
Daniel Pouzzner
ecf9982a0f
.wolfssl_known_macro_extras: add TIF_NEED_FPU_LOAD.
2025-04-14 13:49:14 -05:00
Daniel Pouzzner
755fa1a701
linuxkm/x86_vector_register_glue.c: fix can_save_vector_registers_x86() to check wc_linuxkm_fpu_states before calling irq_fpu_usable(), needed for recursive call patterns. also, check TIF_NEED_FPU_LOAD only if it's defined.
2025-04-14 13:36:05 -05:00
Juliusz Sosinowicz
e320b3c90d
fixup! Implement AES-CTS in wolfCrypt
2025-04-14 17:45:34 +02:00
David Garske
bbe956cc0c
Merge pull request #8667 from douzzer/20250413-linuxkm-linux6v15-fixes
...
20250413-linuxkm-linux6v15-fixes
2025-04-14 07:38:20 -07:00
David Garske
b77bd78b5c
Merge pull request #8664 from douzzer/20250411-more-libwolfssl_sources_h-2
...
20250411-more-libwolfssl_sources_h-2
2025-04-14 07:38:02 -07:00
David Garske
5f106adc14
Merge pull request #8665 from gojimmypi/pr-fix-hash-test-memory-leak
...
Remove unreachable test code
2025-04-14 06:58:05 -07:00
Bill Phipps
eca0318fe8
Rename to MAX_KEY_TO_DER_SZ, set to 130. Remove Curve448 changes.
2025-04-14 09:43:55 -04:00
Daniel Pouzzner
57baae90f1
linuxkm/lkcapi_glue.c: update calls to scatterwalk_map() and scatterwalk_unmap() for linux commit 7450ebd29c (merged for Linux 6.15);
...
configure.ac: fix --disable-linuxkm-lkcapi-register;
.wolfssl_known_macro_extras: fix order.
2025-04-14 00:01:40 -05:00
gojimmypi
1de73200ab
Remove unreachable test code
2025-04-13 09:45:08 +02:00
David Garske
b38ab8a064
Merge pull request #8514 from gojimmypi/pr-introduce-arduino-wolfssl_AES_CTR
...
Introduce and move new Arduino examples and configuration updates.
2025-04-12 10:06:11 -07:00
gojimmypi
241a1ed360
Introduce and move new Arduino examples and configuration updates
2025-04-12 15:38:37 +02:00
Koji Takeda
1252d69a9a
Remove trailing spaces
2025-04-12 17:09:36 +09:00
Daniel Pouzzner
e7577bc2e9
wolfssl/wolfcrypt/libwolfssl_sources*.h: check if the other libwolfssl_sources*.h was included before concluding that "#error settings.h included before libwolfssl_sources.h.", and add WC_CONFIG_H_INCLUDED to inhibit multiple inclusions of config.h;
...
wolfcrypt/src/port/kcapi/kcapi_aes.c: restore #include <errno.h> removed incorrectly in ed5d8f8e6b;
wolfcrypt/src/port/liboqs/liboqs.c: include libwolfssl_sources.h;
wolfcrypt/src/port/riscv/*.c: include libwolfssl_sources.h;
wolfcrypt/test/test.c: fix use of WC_TEST_RET_ENC_I() where WC_TEST_RET_ENC_EC() was required.
2025-04-12 00:35:49 -05:00
Koji Takeda
29482a3e4d
Fix a logic
2025-04-12 13:12:36 +09:00
Koji Takeda
770b6cb9e7
Fix too long lines
2025-04-12 10:58:13 +09:00
Koji Takeda
85c71dacb1
Update src/ssl_load.c
...
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com >
2025-04-12 10:01:17 +09:00
David Garske
75501fd728
Merge pull request #8662 from douzzer/20250411-more-libwolfssl_sources_h
...
20250411-more-libwolfssl_sources_h
2025-04-11 13:39:06 -07:00
jordan
4ef7ef02d6
linuxkm ecdh: small cleanup.
2025-04-11 16:20:16 -04:00
jordan
380c3613ed
linuxkm: register ecdh.
2025-04-11 15:16:09 -04:00
Daniel Pouzzner
ed5d8f8e6b
update several files in wolfcrypt/src/port/arm to include libwolfssl_sources.h;
...
update wolfcrypt/src/port/af_alg, wolfcrypt/src/port/devcrypto, and wolfcrypt/src/port/kcapi to include libwolfssl_sources.h;
remove a slew of includes across lib sources made redundant by libwolfssl_sources.h.
2025-04-11 13:57:23 -05:00
Eric Blankenhorn
ed2122256c
Merge pull request #8661 from dgarske/debug_on
...
Fix debug logs (disabled in PR #8616 )
2025-04-11 13:21:34 -05:00
David Garske
fb4970b7e0
Fix debug logs (disabled in PR #8616 )
2025-04-11 11:19:24 -07:00
David Garske
1f34b71017
Merge pull request #8660 from douzzer/20250411-fixes
...
20250411-fixes
2025-04-11 10:43:27 -07:00
gojimmypi
8ee7d381ec
Fix hash_test() memory leak in wolfcrypt/test/test.c ( #8506 )
...
* Fix hash_test() memory leak in wolfcrypt/test/test.c
* Escape HASH_TYPE_E comparisons
* Revised hash_test() in test.c
* Use ERROR_OUT and WC_NO_ERR_TRACE patterns, polish
* Remove placeholder init, no longer needed
* remove verbose hash_test() WOLFSSL_MSG and PRINT_HEAP_CHECKPOINT
2025-04-11 10:37:55 -07:00
JacobBarthelmeh
704e97bca6
Merge pull request #8595 from dgarske/renesas_rx_tsip
...
Fixes for Renesas RX TSIP
2025-04-11 11:22:13 -06:00
David Garske
11001c86f0
Merge pull request #8644 from lealem47/zd19343
...
CMSIS: Skip Mutex calls if OS isn't running
2025-04-11 09:58:10 -07:00
Daniel Pouzzner
7acc3360fc
.github/workflows/pq-all.yml: add -DTEST_LIBWOLFSSL_SOURCES_INCLUSION_SEQUENCE, and add a config with CC=c++.
2025-04-11 11:14:57 -05:00
Juliusz Sosinowicz
62bf90c09c
Add dox comments for aes-cts
2025-04-11 16:50:25 +02:00
Daniel Pouzzner
29dcf42309
src/internal.c, tests/api.c: add missing casts for C++ compatibility (fixes "invalid conversion" errors).
2025-04-11 09:33:20 -05:00
Daniel Pouzzner
cfd93b1bd4
tests/api.c: fix error path uninited-data defects in test_wc_PKCS7_EncodeSignedData() (followup to bf95f80c6d, detected by valgrind).
2025-04-11 09:20:14 -05:00
Koji Takeda
a3862f0e59
Improve ML-DSA private key import
2025-04-11 16:28:54 +09:00
philljj
1fb8f5f0c4
Merge pull request #8658 from douzzer/20250410-linuxkm-fixes
...
20250410-linuxkm-fixes
2025-04-10 23:02:26 -04:00
David Garske
38f951b7a1
Merge pull request #8657 from gojimmypi/pr-revert-vis-for-tests
...
Revert Espressif manual WOLFSSL_VIS_FOR_TESTS settings
2025-04-10 16:32:20 -07:00
David Garske
77692a814a
Merge pull request #8645 from JacobBarthelmeh/pkcs7_stream
...
additional PKCS7 streaming test case
2025-04-10 16:03:56 -07:00
David Garske
368dcf51af
Merge pull request #8612 from JacobBarthelmeh/pkcs8
...
account for existing pkcs8 header
2025-04-10 16:03:49 -07:00
David Garske
e8656d0d22
Merge pull request #8616 from julek-wolfssl/zd/19589
...
openssl compat: Push/pop to/from the end of the list object
2025-04-10 16:02:23 -07:00
Kareem
4808ce1b8c
Add new macro to known macros, reformat comment to fit in max length.
2025-04-10 15:48:50 -07:00
Daniel Pouzzner
f609d423d7
linuxkm/Kbuild: treat KERNEL_ARCH "x86_64" as "x86" and remove inapt -mpreferred-stack-boundary=4 from x86 WOLFSSL_CFLAGS;
...
linuxkm/linuxkm_wc_port.h: use >=6.9.0 as the gate for 5-arg fortify_panic();
in lkm_printf() definition, use _printk on >5.15.0;
linuxkm/module_hooks.c: raise MAX_FIPS_DATA_SZ and MAX_FIPS_CODE_SZ to
accommodate growth.
2025-04-10 17:23:17 +00:00
gojimmypi
8cf6195426
Revert Espressif manual WOLFSSL_VIS_FOR_TESTS settings
2025-04-10 17:13:56 +02:00
Sean Parkinson
3919491a6a
Merge pull request #8589 from kareem-wolfssl/zd19572
...
Check if HWCAP_ASIMDRDM is defined.
2025-04-10 08:25:30 +10:00
philljj
83d134e0be
Merge pull request #8654 from douzzer/20250409-linuxkm-fortify_panic-6v8
...
20250409-linuxkm-fortify_panic-6v8
2025-04-09 16:18:40 -04:00
David Garske
e37dc29c1c
Fixed RX TSIP RSA key creation to populate the RsaKey public material.
...
Fixed issue with brace when using `WOLF_CRYPTO_CB_ONLY_RSA`.
Fixed mixed declaration in `wc_RsaFunction_ex`.
Fixed missing SetMyVersion with for RSA key gen with old ASN and no PKCS12.
Added gating on RSA 1024/2048 RX TSIP build macros.
2025-04-09 12:39:48 -07:00
Daniel Pouzzner
a22bcc3667
linuxkm/linuxkm_wc_port.h: on kernel >=6.8, for CONFIG_FORTIFY_SOURCE, use 5-arg fortify_panic() override macro.
2025-04-09 18:35:04 +00:00
JacobBarthelmeh
3787dbde2b
fix test case, set data chunk size to use
2025-04-09 09:48:50 -06:00
David Garske
099eaf582c
Merge pull request #8487 from julek-wolfssl/zd/19391
...
TLS EMS: Set haveEMS when we negotiate TLS 1.3
2025-04-09 08:27:33 -07:00
Juliusz Sosinowicz
56263d9577
fixup! Push/pop to/from the end of the list object
2025-04-09 14:40:00 +02:00
Juliusz Sosinowicz
8b7e1be694
Maintain backwards compatible order of SAN
...
Maintain previous order in X509_get_ext_d2i(cert, NID_subject_alt_name, NULL, NULL). Tested for in Python osp port (test_ssl.py:test_parse_all_sans).
2025-04-09 14:40:00 +02:00
Juliusz Sosinowicz
5f13aebd5f
Push/pop to/from the end of the list object
...
The last object pushed should be visible in the highest index
2025-04-09 14:40:00 +02:00
Juliusz Sosinowicz
7cbc71b024
Refactor *_push and *_pop compat API
2025-04-09 14:40:00 +02:00
Juliusz Sosinowicz
ab64597b62
fixup! Move extended master secret testing to test_tls_ext
2025-04-09 14:36:34 +02:00
Juliusz Sosinowicz
a240a58605
fixup! TLS EMS: Set haveEMS when we negotiate TLS 1.3
2025-04-09 14:36:34 +02:00
Juliusz Sosinowicz
89e392f1e8
fixup! Move extended master secret testing to test_tls_ext
2025-04-09 14:36:34 +02:00
Juliusz Sosinowicz
f15ff6861c
TLS EMS: Set haveEMS when we negotiate TLS 1.3
2025-04-09 14:36:34 +02:00
Juliusz Sosinowicz
2c585d73c8
Move extended master secret testing to test_tls_ext
2025-04-09 14:36:34 +02:00
Juliusz Sosinowicz
75ca54889c
Implement AES-CTS in wolfCrypt
2025-04-09 12:11:08 +02:00
Daniel Pouzzner
6761dbb2ed
Merge pull request #8637 from philljj/register_ecdsa
...
linuxkm: register ecdsa.
2025-04-08 23:05:00 -05:00
David Garske
16a6818614
Merge pull request #8638 from JacobBarthelmeh/ada
...
add a CI test for Ada build
2025-04-08 16:00:02 -07:00
David Garske
e5c275ab02
Merge pull request #8649 from julek-wolfssl/fix-multi-compiler
...
multi-compiler.yml: update ubuntu version
2025-04-08 15:16:35 -07:00
David Garske
a2ca1fe31f
Merge pull request #8641 from gojimmypi/pr-espressif-examples-update
...
Espressif updates. Kconfig, WOLFSSL_VIS_FOR_TESTS, ESP32P4
2025-04-08 15:09:18 -07:00
David Garske
f29f928dee
Merge pull request #8648 from julek-wolfssl/hostap-tests
...
hostap-vm.yml: Fix `No module named 'Crypto'` errors that were causing tests to be skipped
2025-04-08 15:08:14 -07:00
David Garske
a221b5108b
Merge pull request #8647 from douzzer/20250408-libwolfssl_sources_h-fixes
...
20250408-libwolfssl_sources_h-fixes
2025-04-08 15:05:11 -07:00
Sean Parkinson
791bda3323
Merge pull request #8650 from douzzer/20250408-wc_static_assert_dummy_struct-gcxx-6v5
...
20250408-wc_static_assert_dummy_struct-gcxx-6v5
2025-04-09 07:36:28 +10:00
Kareem
de04d8a486
Make trusted_ca_keys check opt-in. It is not required according to the RFC.
2025-04-08 14:32:31 -07:00
Sean Parkinson
a1442cf3a1
Merge pull request #8643 from kaleb-himes/KH-SRTP-REVIEW-rev1
...
Explicit API redirects for FIPS moving forward
2025-04-09 07:08:52 +10:00
Kareem
8e1cfb8b8b
Add HWCAP_ASIMDRDM to known macros
2025-04-08 13:42:05 -07:00
Kareem
1750325c0b
Check if HWCAP_ASIMDRDM is defined, old hwcap.h headers do not define this.
2025-04-08 13:42:05 -07:00
Bill Phipps
e2a7f40148
Revert test Ed448 changes.
2025-04-08 16:11:40 -04:00
Bill Phipps
65b1bf2c03
Revert Ed448 and Ed25519 test changes.
2025-04-08 16:09:20 -04:00
Bill Phipps
99144ee58b
Update Curve448 size to 256 and add uses in Ed
2025-04-08 15:38:49 -04:00
Bill Phipps
c3dbe29f21
Update to expose reasonable DER buffer sizes for Curve448/25519
2025-04-08 15:17:54 -04:00
Daniel Pouzzner
e1ece63942
wolfssl/wolfcrypt/types.h: refactor fallback implementation of wc_static_assert() to depend on __COUNTER__, to avoid namespace collisions on unlucky macro invocations with same line numbers.
2025-04-08 19:01:44 +00:00
Juliusz Sosinowicz
1f0a28e3f1
multi-compiler.yml: update ubuntu version
...
Removed clang 10 testing since it is no longer available in the latest Ubuntu release.
2025-04-08 20:24:56 +02:00
Juliusz Sosinowicz
c0f27e7066
hostap-vm.yml: Fix No module named 'Crypto' errors that were causing tests to be skipped
2025-04-08 18:53:24 +02:00
Daniel Pouzzner
831ea90c6d
fix typo in arm-thumb2 include of libwolfssl_sources_asm.h.
2025-04-08 16:19:57 +00:00
JacobBarthelmeh
fb6cbdd5be
free PKCS7 struct at the end of test case for loop
2025-04-08 10:15:18 -06:00
JacobBarthelmeh
0171024c4b
fix for typo in comments
2025-04-08 10:02:16 -06:00
JacobBarthelmeh
bf95f80c6d
additional PKCS7 streaming test case
2025-04-08 10:00:42 -06:00
Lealem Amedie
17953d064f
CMSIS: Skip Mutex calls if OS isn't running
2025-04-08 10:36:22 -04:00
David Garske
6d299ea943
Merge pull request #8634 from JacobBarthelmeh/pkcs7_stream
...
account for edge case with pkcs7 streaming
2025-04-07 16:01:14 -07:00
jordan
35f8c3b75c
linuxkm ecdsa: fix ecdsa fips define guards, and fix names.
2025-04-07 17:00:13 -04:00
David Garske
18ed67a27d
Merge pull request #8640 from douzzer/20250404-WOLFSSL_SOURCES_H
...
20250404-WOLFSSL_SOURCES_H
2025-04-07 12:47:53 -07:00
kaleb-himes
8c0ef0b1f5
Explicit API redirects for FIPS moving forward
2025-04-07 11:06:52 -06:00
David Garske
0e27b3e8c8
Merge pull request #8613 from SparkiDev/lms_iana
...
LMS: change identifiers to match standard
2025-04-07 10:00:35 -07:00
jordan
69688c223b
linuxkm ecdsa: fix ecc define guards.
2025-04-07 12:04:18 -04:00
Anthony Hu
a3c3996c08
256/192
2025-04-07 10:43:10 -04:00
Anthony Hu
6cd1d7f3c9
Fix building ML-KEM and LMS with cmake
2025-04-07 10:43:10 -04:00
gojimmypi
40c52bd844
Espressif updates. Kconfig, WOLFSSL_VIS_FOR_TESTS, ESP32P4
2025-04-06 16:01:35 +02:00
Daniel Pouzzner
3465dde0bb
synchronize with scripts#480 (except wolfcrypt/src/sp_arm32.c and wolfcrypt/src/sp_cortexm.c, which have large unrelated desyncs).
2025-04-04 21:41:29 -05:00
Daniel Pouzzner
c401f5caf2
move the newly added wolfcrypt/src/wolfssl_sources.h to wolfssl/wolfcrypt/libwolfssl_sources.h, and likewise for wolfssl_sources_asm.h; revert changes to IDE/ project files.
2025-04-04 18:44:12 -05:00
Daniel Pouzzner
217440c885
Add wolfcrypt/src/wolfssl_sources.h and wolfcrypt/src/wolfssl_sources_asm.h,
...
which force on BUILDING_WOLFSSL and do boilerplate includes, and update library
sources to include them at the top.
wolfssl_sources.h includes types.h, error-crypt.h, and logging.h, and
conditionally, config.h. settings.h and wc_port.h are unconditionally
included at the top of types.h.
wolfssl_sources_asm.h includes settings.h, and conditionally, config.h.
Add wolfssl_sources*.h to wolfcrypt/src/include.am, and to several IDE/ project
files.
Also added a TEST_WOLFSSL_SOURCES_INCLUSION_SEQUENCE clause in
wolfssl/wolfcrypt/settings.h to allow coverage testing.
In wolfcrypt/src/misc.c, retain existing ad hoc boilerplate includes, and use
them if WOLFSSL_VIS_FOR_TESTS, otherwise include the new wolfssl_sources.h.
Define WOLFSSL_VIS_FOR_TESTS at top of wolfcrypt/test/test.c.
Also renamed WOLFSSL_NEED_LINUX_CURRENT to WOLFSSL_LINUXKM_NEED_LINUX_CURRENT,
for clarity.
2025-04-04 16:51:04 -05:00
Kareem
29ce716615
Add test case for parsing PKCS8 key with existing header.
2025-04-04 12:19:13 -06:00
JacobBarthelmeh
57e00e5147
account for existing pkcs8 header
2025-04-04 12:19:13 -06:00
JacobBarthelmeh
04dce0e223
cast for conversion warning
2025-04-04 12:18:14 -06:00
JacobBarthelmeh
8b0650d0fb
account for edge case with pkcs7 streaming
2025-04-04 12:18:14 -06:00
jordan
a626ec242e
linuxkm ecdsa: tiny cleanup.
2025-04-04 14:01:47 -04:00
JacobBarthelmeh
3625391589
update test to use examples.gpr instead of the old client.gpr
2025-04-04 11:33:04 -06:00
JacobBarthelmeh
bb9e6e3fd6
add a CI test for Ada build
2025-04-04 11:30:00 -06:00
JacobBarthelmeh
3ff4e5e303
Merge pull request #8606 from mgrojo/feature/alire-usability
...
Ada: preparation for Alire index and fixes detected by GNATprove
2025-04-04 11:07:29 -06:00
Daniel Pouzzner
10a1126624
Merge pull request #8635 from SparkiDev/asm_thumb2_fix
...
AES Thumb2 ASM: fix td4 variable declarations
2025-04-04 11:13:50 -05:00
jordan
d62c65231b
linuxkm: register ecdsa.
2025-04-04 11:54:03 -04:00
JacobBarthelmeh
b7af89acdb
Merge pull request #8619 from SparkiDev/mlkem_bigendian
...
ML-KEM/Kyber: fix for big-endian
2025-04-04 09:39:40 -06:00
JacobBarthelmeh
97d86b873d
Merge pull request #8628 from douzzer/20250402-WOLFSSL_TEST_API
...
20250402-WOLFSSL_TEST_API
2025-04-04 09:37:56 -06:00
Sean Parkinson
827516c040
Merge pull request #8636 from douzzer/20250403-linuxkm-lkcapi-fixes
...
20250403-linuxkm-lkcapi-fixes
2025-04-04 15:45:34 +10:00
Daniel Pouzzner
2c001ccec1
linuxkm/lkcapi_glue.c: in km_AesGet(), only null aes_copy->streamData in
...
WOLFSSL_AESGCM_STREAM builds, and in km_AesFree(), remove ad hoc zeroization of
(*aes)->streamData gated on FIPS_VERSION3_LT(6,0,0) because it doesn't include
WOLFSSL_AESGCM_STREAM.
2025-04-03 21:34:11 -05:00
Daniel Pouzzner
96118b416d
WOLFSSL_TEST_VIS: improved naming scheme based on peer review:
...
WOLFSSL_TEST_API->WOLFSSL_TEST_VIS,
WOLFSSL_ALLOW_TEST_APIS->WOLFSSL_VIS_FOR_TESTS,
WOLFSSL_LOCALIZE_TEST_APIS->WOLFSSL_PRIVATE_TEST_VIS.
support message argument to WC_DEPRECATED() on targets that support it
add MSVC support for WC_DEPRECATED().
2025-04-03 19:29:29 -05:00
Daniel Pouzzner
cc223d1904
tests/api.c: in test_wolfSSL_TXT_DB(), fix -Wpointer-to-int-cast detected by building --host=x86_64-w64-mingw32.
2025-04-03 19:29:29 -05:00
Daniel Pouzzner
87e63a0f21
wolfssl/wolfcrypt/wc_port.h: if WOLFSSL_ZEPHYR, don't activate WC_DEPRECATED (compat issues).
2025-04-03 19:29:29 -05:00
Daniel Pouzzner
ce73c1dfd1
Add WC_DEPRECATED, WOLFSSL_TEST_API, WOLFSSL_ALLOW_TEST_APIS, and WOLFSSL_LOCALIZE_TEST_APIS, and use them to control export and usability of internal functions needed by unit tests.
2025-04-03 19:29:29 -05:00
Sean Parkinson
0e8d3ad3d9
AES Thumb2 ASM: fix td4 variable declarations
...
td4 is an array of bytes and the type was wrong.
2025-04-04 09:47:59 +10:00
JacobBarthelmeh
47ed447987
Merge pull request #8632 from douzzer/20250403-fixes
...
20250403-fixes
2025-04-03 17:26:40 -06:00
Sean Parkinson
151b9f0e74
Merge pull request #8633 from JacobBarthelmeh/compile
...
do sanity check for -Wa,-mbranches-within-32B-boundaries use
2025-04-04 09:19:48 +10:00
Sean Parkinson
4f87a8980f
ML-KEM/Kyber: fix for big-endian
...
Don't pull apart the nibbles when big-endian in reject uniform C code.
2025-04-04 09:04:05 +10:00
JacobBarthelmeh
f6894a3949
add compileharden flag
2025-04-03 15:05:24 -06:00
JacobBarthelmeh
c4fcd5fd54
do sanity check that the -Wa,-mbranches-within-32B-boundaries is supported for cases where CC=gcc is really clang
2025-04-03 13:58:43 -06:00
Daniel Pouzzner
b5d999779d
wolfcrypt/src/port/arm/thumb2-aes-asm_c.c: fix a pair of -Wpointer-to-int-casts in AES_ECB_decrypt() and AES_CBC_decrypt().
2025-04-03 14:30:22 -05:00
Daniel Pouzzner
87aa6ec977
wolfcrypt/src/wc_mlkem_poly.c: move mlkem_ntt_add_to() implementation to resolve gating inconsistency (fixes armasm on arm32).
2025-04-03 14:30:22 -05:00
Daniel Pouzzner
971dafb1c2
configure.ac: add v5-kcapi to FIPS version map, same as v5-dev, but version 5.3.0 (as v5-dev was before 9d931d45de).
2025-04-03 14:30:22 -05:00
Daniel Pouzzner
a2eddc889f
tests/api.c: fix double-free()s in test_wolfSSL_FPKI().
2025-04-03 14:30:22 -05:00
JacobBarthelmeh
5ecacfd8eb
Merge pull request #8577 from SparkiDev/x64-branch-32b
...
Intel x86_64, gcc, icc: put branches on 32 byte boundary
2025-04-03 10:53:46 -06:00
JacobBarthelmeh
50ef56ab7a
Merge pull request #8630 from kojiws/kojiws/more_strict_key_format_check
...
Detect unknown key format on ProcessBufferTryDecode()
2025-04-03 10:31:16 -06:00
JacobBarthelmeh
05ac52085d
Merge pull request #8618 from miyazakh/renesas_csplus
...
Fix Renesas cs+ example failure
2025-04-03 10:02:00 -06:00
Koji Takeda
71ebad1fc7
Add test
2025-04-03 22:20:55 +09:00
Koji Takeda
2f01c9d715
Detect unknown key format
2025-04-03 18:36:05 +09:00
Sean Parkinson
c29fba5b7e
Merge pull request #8614 from douzzer/20250317-linuxkm-lkcapi-aes-ctr-ofb-ecb
...
20250317-linuxkm-lkcapi-aes-ctr-ofb-ecb
2025-04-03 10:45:04 +10:00
Sean Parkinson
2210ec8839
Merge pull request #8617 from douzzer/20250401-Base64_Decode_nonCT
...
20250401-Base64_Decode_nonCT
2025-04-03 10:41:08 +10:00
David Garske
ca371b05a5
Merge pull request #8629 from douzzer/20250402-configure-copyright-year
...
20250402-configure-copyright-year
2025-04-02 17:38:00 -07:00
Daniel Pouzzner
3e87c4465c
update copyright year in configure.ac.
2025-04-02 18:51:28 -05:00
Hideki Miyazaki
aef224d53e
fix cs+ failure
2025-04-03 07:57:42 +09:00
Daniel Pouzzner
13c73a9691
linuxkm/lkcapi_glue.c: add LINUXKM_LKCAPI_NEED_AES_COMMON_FUNCS and
...
LINUXKM_LKCAPI_NEED_AES_SKCIPHER_COMMON_FUNCS helper macros (peer review
suggestion).
wolfcrypt/src/aes.c: add lengthy comment in software wc_AesSetKeyLocal()
explaining the dynamics of aes->use_aesni (peer review suggestion), and in the
!haveAESNI && WC_C_DYNAMIC_FALLBACK case, return with immediate success rather
than following through to the redundant AesSetKey_C().
2025-04-02 17:30:19 -05:00
Daniel Pouzzner
e0a74420f1
wolfcrypt/src/coding.c: restore support for BASE64_NO_TABLE builds.
2025-04-02 17:14:09 -05:00
Daniel Pouzzner
140e18c063
undo unnecessary change to .github/workflows/zephyr.yml.
2025-04-02 17:08:20 -05:00
Daniel Pouzzner
c2b486ce53
fix some misindentation in wolfcrypt/src/coding.c.
...
force lower CMAKE_POLICY_VERSION_MINIMUM to try to work around obsolete cmake config syntax in several OSP workflows.
2025-04-02 17:08:20 -05:00
Daniel Pouzzner
51c6848340
wolfcrypt/src/coding.c, wolfssl/wolfcrypt/coding.h, wolfcrypt/src/asn.c,
...
wolfcrypt/test/test.c: refactor Base64_Decode() with separate always-CT
Base64_Decode() and never-CT Base64_Decode_nonCT(), and use the latter only to
decode known-public PEM objects, otherwise use always-CT Base64_Decode().
2025-04-02 17:08:20 -05:00
Daniel Pouzzner
8705d28d48
wolfcrypt/src/aes.c: in wc_AesSetKeyLocal(), rework support for WC_FLAG_DONT_USE_AESNI (fixes WC_C_DYNAMIC_FALLBACK).
...
wolfssl/wolfcrypt/settings.h: in WOLFSSL_LINUXKM section, #ifdef LINUXKM_LKCAPI_REGISTER, #define WOLFSSL_TEST_SUBROUTINE to nothing, and #define WC_TEST_EXPORT_SUBTESTS.
linuxkm/lkcapi_glue.c:
* add check_skcipher_driver_masking() and check_aead_driver_masking(),
* use _masking() checks in all linuxkm_test_*().
* add !WOLFSSL_AESGCM_STREAM implementation of linuxkm_test_aesgcm().
* add implementations of linuxkm_test_aesctr(), linuxkm_test_aesofb(), and linuxkm_test_aesecb()
* remove incomplete+disabled AES-CCM shim implementation.
linuxkm/module_hooks.c: pull in wolfcrypt/test/test.h if LINUXKM_LKCAPI_REGISTER.
linuxkm/Makefile: build wolfcrypt/test/test.o if ENABLED_LINUXKM_LKCAPI_REGISTER.
Makefile.am: add ENABLED_LINUXKM_LKCAPI_REGISTER to exports in BUILD_LINUXKM section.
configure.ac: add AC_SUBST([ENABLED_LINUXKM_LKCAPI_REGISTER]); in ENABLED_LINUXKM_DEFAULTS set up, remove `-DWOLFSSL_TEST_SUBROUTINE=static` from AM_CFLAGS adds; fix whitespace.
.wolfssl_known_macro_extras: add WC_WANT_FLAG_DONT_USE_AESNI.
wolfcrypt/test/test.c: add `|| defined(WC_TEST_EXPORT_SUBTESTS)` to outermost gate, add wc_test_ prefix to render_error_message() and export it,
wolfcrypt/test/test.h: add prototype for wc_test_render_error_message(), and #ifdef WC_TEST_EXPORT_SUBTESTS, add prototypes for all the subtests.
2025-04-02 17:00:48 -05:00
Daniel Pouzzner
8092ff915c
linuxkm/lkcapi_glue.c: bring in wolfcrypt/src/misc.c for ForceZero if FIPS_VERSION3_LT(6,0,0).
2025-04-02 17:00:48 -05:00
Daniel Pouzzner
3c16722538
wolfcrypt/src/aes.c and wolfssl/wolfcrypt/aes.h: add support for WC_FLAG_DONT_USE_AESNI in wc_AesSetKeyLocal(); add support for USE_INTEL_SPEEDUP_FOR_AES.
...
linuxkm/lkcapi_glue.c: finish implementation of WC_LINUXKM_C_FALLBACK_IN_SHIMS and add TEST_WC_LINUXKM_C_FALLBACK_IN_SHIMS.
use "WC_C_DYNAMIC_FALLBACK" consistently (remove/replace uses of "WC_AES_C_DYNAMIC_FALLBACK").
2025-04-02 17:00:48 -05:00
Daniel Pouzzner
6d92dae632
configure.ac: add support for --enable-aesni-with-avx/USE_INTEL_SPEEDUP_FOR_AES (AESNI+AVX, but only for AES modes).
...
linuxkm/lkcapi_glue.c: implement WC_LINUXKM_C_FALLBACK_IN_SHIMS, km_AesGet(), and km_AesFree().
src/include.am: add missing gates for AES-GCM and AES-XTS asm.
wolfcrypt/src/aes_xts_asm.S and wolfssl/wolfcrypt/sp_int.h: don't redefine HAVE_INTEL_AVX2.
2025-04-02 17:00:48 -05:00
Daniel Pouzzner
9d931d45de
LKCAPI checkpoint (all AES except CCM working).
2025-04-02 17:00:48 -05:00
JacobBarthelmeh
9bcb3f71d0
Merge pull request #8624 from douzzer/20250401-AEAD-WARN_UNUSED_RESULT
...
20250401-AEAD-WARN_UNUSED_RESULT
2025-04-02 15:08:33 -06:00
Daniel Pouzzner
91e9e8f65f
update documentation for AEAD decrypt methods, specifically noting that nonzero retval means output data is undefined, and noting requirement to zeroize the output data unconditionally.
2025-04-02 13:36:59 -05:00
JacobBarthelmeh
a3d0ffb1ed
Merge pull request #8622 from SparkiDev/kyber_improv_3
...
ML-KEM/Kyber: minor improvements
2025-04-02 09:56:32 -06:00
JacobBarthelmeh
0a4599133c
Merge pull request #8599 from kareem-wolfssl/zd19563
...
Add support for DoD certificate policy OIDs.
2025-04-02 09:44:25 -06:00
Daniel Pouzzner
b8ece68b17
add WARN_UNUSED_RESULT to AEAD verify methods.
2025-04-02 01:15:57 -05:00
Sean Parkinson
fafc333e93
LMS: add API to get Key ID from raw private key
...
Always last 16 bytes of private key.
2025-04-02 16:05:11 +10:00
Sean Parkinson
8a9e125756
ML-KEM/Kyber: minor improvements
...
Minor improvement to SHA-3 x64 code.
Minor improvement to performance of ML-KEM/Kyber x64 code.
Minor improvement to performance of C code.
2025-04-02 13:10:44 +10:00
David Garske
dcdaeabc40
Merge pull request #8620 from lealem47/actions_cmake
...
Set the CMake compiler version for failing gh actions
2025-04-01 18:46:59 -07:00
Lealem Amedie
5083b41d1b
Set the CMake compiler version for failin gh actions
2025-04-01 14:11:15 -10:00
Sean Parkinson
83e1cfcf01
LMS: change identifiers to match standard
...
Use the identifiers from IANA for LMS.
2025-04-01 12:15:20 +10:00
Sean Parkinson
c5dadd6f8d
Merge pull request #8600 from JacobBarthelmeh/microchip
...
random implementation does not require PIC32 build macro
2025-04-01 08:36:45 +10:00
Kareem
8e9a986e0b
Add comment clarifying that DoD certificate policy OIDs are not currently being parsed in the code, they are just recognized as valid OIDs.
2025-03-31 14:37:19 -07:00
mgrojo
e6f09b8372
Ada: fixes for the No_Secondary_Stack restriction
...
- Align README.md and GPR files with the fact that the server no longer compiles with the No_Secondary_Stack restriction.
- Fix include.am to reference the new name for the adc file.
2025-03-31 23:27:31 +02:00
JacobBarthelmeh
307d746653
Merge pull request #8590 from SparkiDev/arm32_no_assign_reg
...
ARM32/Thumb2 ASM: fix WOLFSSL_NO_VAR_ASSIGN_REG
2025-03-31 10:04:51 -06:00
JacobBarthelmeh
151a156581
include harmony macro check with strncasecmp and strcasecmp
2025-03-31 09:35:10 -06:00
JacobBarthelmeh
d035bfeb99
Merge pull request #8607 from embhorn/nds_doc
...
Update DevKitPro doc with calico dependency
2025-03-31 09:08:30 -06:00
Eric Blankenhorn
b0f65a85ab
Update DevKitPro doc with calico dependency
2025-03-28 15:59:02 -05:00
Kareem
b803a03ddd
Add support for ISRG domain validated certificate policy OID (used by Let's Encrypt). Fixes libspdm test failure.
2025-03-28 12:41:52 -07:00
mgrojo
98eda78857
Ada: fix issues in tls_server.adb detected by gnatprove
...
Checked with:
```
gnatprove -Pdefault.gpr --level=4 -j12
```
2025-03-28 19:33:42 +01:00
mgrojo
bf5009b544
Ada: fix initialization issue in examples
...
Detected by
```
gnatprove -Pclient.gpr --level=4 -j12
```
2025-03-28 18:38:22 +01:00
mgrojo
db4ebfb77e
Allow use of the library with an Alire pin
...
- Allow enabling WOLFSSL_STATIC_PSK via an Alire configuration variable
- `gnat.adc` applies unconditionally when using the library through Alire, so it has been renamed and used only in the default project file.
- Clean-up of the Alire project file `wolfssl.gpr`.
2025-03-28 18:16:06 +01:00
Brett Nicholas
a8384bb426
Merge pull request #8602 from dgarske/cryptocb_no_hmac
...
Fix for crypto callback macro guards with `DEBUG_CRYPTOCB`
2025-03-28 10:51:45 -06:00
David Garske
04a3f1c206
Merge pull request #8604 from LinuxJedi/STM32MP2
...
Add instructions for STM32MP25 with OpenSTLinux
2025-03-28 09:37:13 -07:00
Andrew Hutchings
803a160808
Merge pull request #8601 from dgarske/stm32_pka
...
Fix for STM32 PKA with P521 and shared secret
2025-03-28 13:49:25 +00:00
Andrew Hutchings
5d0c3f7c27
Add instructions for STM32MP25 with OpenSTLinux
2025-03-28 09:28:49 +00:00
David Garske
e1ec90a886
Fix for crypto callback without HMAC and DEBUG_CRYPTOCB. Fix guards on crypto cb hashing.
2025-03-27 16:42:24 -07:00
Sean Parkinson
3969dd5a11
Merge pull request #8596 from dgarske/various_isacii_keylog
...
Various improvements to iscacii and CMake key log
2025-03-28 08:51:49 +10:00
David Garske
d235013fe9
Fix for STM32 PKA with P521 and shared secret. ZD 19422
2025-03-27 15:30:37 -07:00
JacobBarthelmeh
25dc3f08e9
random implementation does not require PIC32 build macro
2025-03-27 15:53:39 -06:00
Kareem
f313edb4cf
Add a test certificate for all of the FPKI certificate policy OIDs.
2025-03-27 12:20:36 -07:00
Kareem
eb3b4751ac
Handle collisions in FPKI cert policy OID sums.
2025-03-27 12:20:36 -07:00
Kareem
ac2df1420b
Checked and corrected all OIDs and OID sums.
2025-03-27 12:20:36 -07:00
Devin AI
53f30b3c47
Add remaining FPKI cert policy OIDs.
...
Co-Authored-By: kareem@wolfssl.com <kareem@wolfssl.com >
2025-03-27 12:20:29 -07:00
Kareem
6daaaec6e2
WIP: clean up Devin's work, remove duplicate OIDs, handle OID sum collisions
2025-03-27 12:20:28 -07:00
Devin AI
a911f70049
Add other federal PKI OIDs.
...
Co-Authored-By: kareem@wolfssl.com <kareem@wolfssl.com >
2025-03-27 12:20:02 -07:00
Devin AI
6910f80e3d
Add all DoD PKI cert policy OIDs.
...
Co-Authored-By: kareem@wolfssl.com <kareem@wolfssl.com >
2025-03-27 12:19:49 -07:00
Sean Parkinson
1c56a2674a
Merge pull request #8521 from kaleb-himes/KH-SRTP-PORTING-OEs-phase4-rev3
...
Checkin XCODE settings for v6.0.0 module
2025-03-27 13:03:23 +10:00
Sean Parkinson
21c0d7803a
Greenhills compiler: fix asm and volatile
...
Greenhills compiler doesn't accept volatile and __asm__ needs to be
__asm.
2025-03-27 10:54:19 +10:00
Sean Parkinson
ea677dd30d
ARM32 inline ASM: make all vars input when not assigning regs
...
Compiler doesn't keep parameters in the same registers as passed if they
are output registers.
2025-03-27 10:51:01 +10:00
David Garske
a59075b908
Various improvements to iscacii and CMake key log:
...
* Detect 'isascii' at configuration (tested with `./configure CFLAGS="-DNO_STDLIB_ISASCII" && make check`).
* Add mew CMake option `WOLFSSL_KEYLOG_EXPORT` (fixes #8165 )
Replaces PR #8174 and #8158 . Thank you @redbaron.
2025-03-26 15:24:15 -07:00
Daniel Pouzzner
8b8873fb2c
Merge pull request #8553 from kareem-wolfssl/zd19458
...
Check for whether librt is needed for clock_gettime.
2025-03-26 12:44:24 -05:00
Daniel Pouzzner
ddf7d5b6f1
Merge pull request #8584 from dgarske/stm32_aesgcm
...
Fixes for STM32H7S AES GCM. Cleanups for STM32 AES GCM.
2025-03-26 10:57:18 -05:00
Sean Parkinson
cfab666369
ARM32/Thumb2 ASM: fix WOLFSSL_NO_VAR_ASSIGN_REG
...
Thumb2 needed constants defined even with no register assignments.
ARM32 needed support added fo rnot having registers assigned to
variables.
2025-03-26 12:46:32 +10:00
Daniel Pouzzner
61cdcd71e6
Merge pull request #8588 from SparkiDev/mlkem_encapsulte_no_return
...
ML-KEM/Kyber: mlkem_encapsulate not to return a value
2025-03-25 00:14:41 -05:00
Sean Parkinson
50304cfb1c
Intel x86_64, gcc, icc: align loops to 64 byte boundary
...
Improved security with compile flag.
2025-03-25 09:40:01 +10:00
Sean Parkinson
cfc774c152
Merge pull request #8581 from dgarske/no_ecc_check_public_order
...
Add option to disable ECC public key order checking
2025-03-25 09:13:56 +10:00
Sean Parkinson
66662bc399
ML-KEM/Kyber: mlkem_encapsulate not to return a value
...
Don't return a value from mlkem_encapsulate() to ensure code is just the
maths.
2025-03-25 08:11:03 +10:00
David Garske
8635014249
Fix to enable SHA384/SHA512 crypto hardware on STM32H7S.
2025-03-24 14:30:35 -07:00
David Garske
a709b16ed2
Adding option for NO_ECC_CHECK_PUBKEY_ORDER. ZD 19422
2025-03-24 14:00:23 -07:00
David Garske
0cc0bb0afe
Merge pull request #8586 from douzzer/20250321-siphash-armasm
...
20250321-siphash-armasm
2025-03-23 14:00:17 -07:00
Daniel Pouzzner
0cea9c09f7
src/internal.c: fix -Wdeclaration-after-statement in ProcessCSR_ex().
2025-03-22 23:51:59 -05:00
Daniel Pouzzner
29a0992ed5
wolfssl/wolfcrypt/settings.h: for WOLFCRYPT_FIPS_RAND, don't define USE_FAST_MATH, and make sure NO_BIG_INT is defined.
2025-03-22 22:21:23 -05:00
Daniel Pouzzner
3cad38a1ca
wolfcrypt/test/test.c: gate wc_CmacFree()s in cmac_test() on !HAVE_FIPS || FIPS_VERSION3_GE(6,0,0); fix some return codes in hash_test().
2025-03-22 17:19:37 -05:00
Daniel Pouzzner
60ffde6d7c
wolfcrypt/test/test.c: fix error-path various uninitialized data uses and memory leaks.
2025-03-22 13:40:31 -05:00
Daniel Pouzzner
190f46ef23
wolfcrypt/test/test.c: fix -Wdeclaration-after-statement in sm3_test().
2025-03-22 01:22:19 -05:00
Daniel Pouzzner
1587f21938
fix a couple -Wdeclaration-after-statements.
2025-03-21 22:33:45 -05:00
Daniel Pouzzner
777d42fabe
wolfcrypt/src/siphash.c: gate armasm on defined(WOLFSSL_ARMASM), not !defined(WOLFSSL_NO_ASM).
2025-03-21 21:12:41 -05:00
Daniel Pouzzner
576c489b0f
Merge pull request #8583 from lealem47/fips_linuxkm
...
Remove linuxkm-pie dependency for FIPS linuxkm
2025-03-21 21:09:04 -05:00
David Garske
defcaa192f
Merge pull request #8582 from douzzer/20250321-Wdeclaration-after-statements-and-Kyber-fixes
...
20250321-Wdeclaration-after-statements-and-Kyber-fixes
2025-03-21 16:40:38 -07:00
David Garske
93c8d7df0d
Fixes for STM32H7S AES GCM. Cleanups for STM32 AES GCM.
2025-03-21 16:17:36 -07:00
Daniel Pouzzner
e3fe575720
tests/api/test_evp.c: fix gating in test_wolfSSL_EVP_CIPHER_type_string().
2025-03-21 17:52:33 -05:00
Daniel Pouzzner
a57326d500
fix whitespace in tests/api/test_evp.c.
2025-03-21 16:56:48 -05:00
Daniel Pouzzner
b0a16a3d94
configure.ac: remove PWDBASED and PBKDF2 from fips=lean-aesgcm.
2025-03-21 16:56:24 -05:00
Lealem Amedie
2fdac57a69
Remove linuxkm-pie dependency for FIPS linuxkm
2025-03-21 15:36:31 -06:00
Daniel Pouzzner
1e89002762
fix various -Wdeclaration-after-statements, and add
...
-Wdeclaration-after-statement to .github/workflows/pq-all.yml.
rearrange code/gating in wolfcrypt/src/wc_mlkem.c:mlkemkey_encapsulate() for
clarity and to fix a -Wdeclaration-after-statement.
also, made mlkem_encapsulate_c() and mlkem_encapsulate() return error code
(currently always zero) rather than void, for consistency.
configure.ac: fix Kyber/ML-KEM option setup.
2025-03-21 15:46:44 -05:00
David Garske
9a3ea6fd73
Merge pull request #8568 from embhorn/msvs_pqc_build
...
Fix MSVS build issues with PQC config
2025-03-21 12:41:19 -07:00
Kareem
91239dc42d
Only search for clock_gettime when using RNG with wolfEntropy.
2025-03-21 11:05:24 -07:00
Kareem
17bb8c4c84
Check for whether librt is needed for clock_gettime.
2025-03-21 11:01:37 -07:00
David Garske
294e4c79a8
Merge pull request #8578 from philljj/coverity_unchecked_ret
...
Coverity unchecked return value
2025-03-21 10:05:29 -07:00
David Garske
9258fde02f
Merge pull request #8570 from wolfSSL/devin/1742405136-cipherType-to-string
...
Add wolfSSL_EVP_CIPHER_type_string function and test
2025-03-21 10:04:41 -07:00
Eric Blankenhorn
f663ed28b6
Fix MSVS build issues with PQC config
2025-03-21 11:49:55 -05:00
Chris Conlon
7c9ecd39fe
Merge pull request #8550 from lealem47/STM32WBA
...
Add support for STM32WBA
2025-03-21 09:58:17 -06:00
David Garske
b9aeeac58b
Merge pull request #8576 from douzzer/20250319-FIPS-lean-aesgcm
...
20250319-FIPS-lean-aesgcm
2025-03-21 08:55:34 -07:00
jordan
8d0931df9d
coverity: check mp radix ret values.
2025-03-21 10:08:13 -04:00
jordan
15ac07c9ef
coverity: check correct ret value.
2025-03-21 09:25:28 -04:00
jordan
3a02ab286c
coverity: unchecked return value with mp_copy.
2025-03-21 08:59:31 -04:00
jordan
7c831263c8
coverity: unchecked return value in EchHashHelloInner.
2025-03-21 08:48:45 -04:00
Sean Parkinson
295ba3b416
Intel x86_64, gcc, icc: put branches on 32 byte boundary
...
Improved security with compile flag.
2025-03-21 17:50:31 +10:00
Daniel Pouzzner
f14498ea6b
fix a couple broken configs in examples/configs/ - simultaneous SP and NO_BIG_INT.
2025-03-20 22:40:08 -05:00
Daniel Pouzzner
57ecd4b246
configure.ac: fix -DNO_BIG_INT setup to recognize $ENABLED_SP_MATH.
...
wolfcrypt/test/test.c: fix gating around modLen in rsa_test().
wolfssl/openssl/bn.h: remove superfluous WOLFSSL_SP_MATH gate around mp_int mpi
in struct WOLFSSL_BIGNUM definition.
wolfssl/wolfcrypt/wolfmath.h: add check for "Conflicting MPI settings.", add
initial check for WOLFSSL_SP_MATH_ALL || WOLFSSL_SP_MATH to include sp_int.h,
and remove superfluous WOLFSSL_SP_MATH gate on "common math functions".
2025-03-20 22:18:22 -05:00
Daniel Pouzzner
e870e7f6d2
configure.ac: in FIPS lean-aesgcm setup, don't lock features that are outside
...
the FIPS boundary, just set up appropriate defaults.
wolfssl/wolfcrypt/wolfmath.h: if legacy math back ends aren't defined, and
NO_BIG_INT isn't defined, then always include sp_int.h, for backward compat.
2025-03-20 21:07:15 -05:00
David Garske
5f013c735e
Merge pull request #8575 from ColtonWilley/fix_cryptocb_rsa_pad_ret_len
...
Fix outlen return for RSA private decrypt with WOLF_CRYPTO_CB_RSA_PAD
2025-03-20 19:03:25 -07:00
Daniel Pouzzner
27a582829f
.wolfssl_known_macro_extras: get macros back in C-lexical order.
2025-03-20 20:10:16 -05:00
Daniel Pouzzner
b544354306
wolfssl/wolfcrypt/wolfmath.h: don't include an MPI header if NO_BIG_INT is
...
defined, and issue a #error if no MPI backend gate is defined and NO_BIG_INT
is not defined either.
configure.ac:
* add support for FIPS lean-aesgcm[-{ready,dev}].
* implement handler for --enable-sha256.
* move setup for WOLFSSL_FIPS_DEV and WOLFSSL_FIPS_READY into the applicable
per-flavor sections.
* fix sensing of $ENABLED_AESGCM in FIPS setup clauses to pivot on `!= "no"`
rather than `= "yes"`, to accommodate "4bit" and other non-"yes" values.
* fix SNI_DEFAULT to be "no" if $ENABLED_TLS = no.
* fix ENABLED_DHDEFAULTPARAMS default to be $ENABLED_DH rather than yes.
wc_encrypt.c: add missing gates in wc_CryptKey() for NO_SHA256.
wolfcrypt/test/test.c: gating fixes for NO_SHA256.
wolfcrypt/benchmark/benchmark.c: basic fixes for building/running with
--disable-rng (-DWC_NO_RNG).
With the above additions and fixes, it's now a clean build, test, and benchmark,
with --disable-sha256 --enable-cryptonly --disable-hashdrbg --disable-rng
--disable-hmac, though RSA/DH/ECC benches are disabled.
2025-03-20 20:03:34 -05:00
David Garske
18ac695bb2
Merge pull request #8556 from SparkiDev/ech-config-control
...
ECH: generate multiple configs and rotate echConfigs
2025-03-20 17:05:43 -07:00
David Garske
2cf4997d0f
Merge pull request #8565 from res0nance/correct-debug-info
...
random: correct debug messages
2025-03-20 17:04:47 -07:00
David Garske
86b01bddd8
Merge pull request #8428 from miyazakh/qt_jenkins
...
Fix Qt Nightly Jenkins failure
2025-03-20 17:03:03 -07:00
David Garske
c06df2093a
Merge pull request #8548 from wolfSSL/devin/1741708186-add-cmake-wolfclu
...
Add WOLFSSL_CLU option to CMakeLists.txt
2025-03-20 16:50:03 -07:00
David Garske
18268a5ea9
Merge pull request #8551 from kareem-wolfssl/zd19541
...
Change #pragma GCC macros in sp_int.c to PRAGMA_GCC macros to avoid calling them on unsupported toolchains.
2025-03-20 16:44:10 -07:00
David Garske
7ba179f50f
Merge pull request #8560 from SparkiDev/test_api_c_split_1
...
Split out tests: random, wolfmath, public key
2025-03-20 16:42:41 -07:00
David Garske
01910a60aa
Merge pull request #8542 from anhu/dual_alg_crit_ext
...
Allow critical alt and basic constraints extensions
2025-03-20 16:15:42 -07:00
David Garske
23ff43f955
Testing results on the STM32WBA52 (Cortex-M33).
2025-03-20 16:02:46 -07:00
Anthony Hu
4967738044
Delete dupe line
2025-03-20 17:41:14 -04:00
Colton Willey
4290bfb9a6
Fix outlen return for RSA private decrypt with WOLF_CRYPTO_CB_RSA_PAD defined
2025-03-20 13:46:13 -07:00
David Garske
2c36ae268f
Merge pull request #8536 from SparkiDev/kyber_to_mlkem
...
Update Kyber APIs to ML-KEM APIs
2025-03-20 11:07:53 -07:00
David Garske
2383402e10
Merge pull request #8537 from philljj/coverity_quic
...
coverity: tests quic cleanup.
2025-03-20 10:58:30 -07:00
David Garske
beac9cb8b8
Merge pull request #8544 from philljj/coverity_test_md5
...
coverity: pacify test_md5 uninitialized scalar variable warning.
2025-03-20 10:57:28 -07:00
David Garske
4c0d4a931e
Merge pull request #8555 from bigbrett/default-devid-disable
...
Add option to disallow automatic use of "default" devId
2025-03-20 10:56:17 -07:00
Sean Parkinson
3e5ee7c142
Merge pull request #8569 from philljj/linuxkm_fedora_build
...
linuxkm fedora: fix uninitialized build error.
2025-03-20 08:30:16 +10:00
Sean Parkinson
cf272ba46b
Merge pull request #8572 from embhorn/zd19587
...
Fix missing alert types in AlertTypeToString
2025-03-20 08:25:56 +10:00
Eric Blankenhorn
ffe4420d19
Fix missing alert types in AlertTypeToString
2025-03-19 16:35:50 -05:00
Devin AI
ec00f780ec
Rename parameter in wolfSSL_EVP_CIPHER_type_string and add test
...
Co-Authored-By: lealem@wolfssl.com <lealem@wolfssl.com >
2025-03-19 17:41:51 +00:00
Devin AI
af1f6543e1
Add wolfSSL_EVP_CIPHER_type_string function to get cipher string from type
...
Co-Authored-By: lealem@wolfssl.com <lealem@wolfssl.com >
2025-03-19 17:29:03 +00:00
philljj
fe3c16da77
Merge pull request #8567 from douzzer/20250317-linuxkm-AES-GCM
...
20250317-linuxkm-AES-GCM
2025-03-19 12:48:10 -04:00
jordan
d1f94ad3e8
linuxkm fedora: fix uninitialized build error.
2025-03-19 10:47:32 -04:00
Daniel Pouzzner
ab7713676e
linuxkm/lkcapi_glue.c: for AES-{CBC,CFB,GCM}, treat ctx->aes_{encrypt,decrypt}
...
as readonly in the encrypt/decrypt handlers -- clone them before setting the IV
-- for thread safety. also, remove the "experimental" designation of
--enable-linuxkm-lkcapi-register=all.
2025-03-18 22:39:17 -05:00
Sean Parkinson
db3ab5a4c7
Merge pull request #8566 from kareem-wolfssl/zd19572
...
Only perform ARM assembly CPUID checks if support was enabled at build time.
2025-03-18 09:03:36 +10:00
Daniel Pouzzner
ac89fbc9e6
linuxkm: fix AES-GCM shim implementation and self-test.
2025-03-17 17:25:53 -05:00
Kareem
6c472496b4
Only perform ARM assembly CPUID checks if support was enabled at build time.
2025-03-17 14:25:08 -07:00
Devin AI
cf813c81b8
Revert "Enable WOLFSSL_OPENSSLEXTRA and OPENSSL_EXTRA for WOLFSSL_CLU option"
...
This reverts commit 16eb8d9ec9 .
2025-03-17 20:30:26 +00:00
Devin AI
16eb8d9ec9
Enable WOLFSSL_OPENSSLEXTRA and OPENSSL_EXTRA for WOLFSSL_CLU option
...
Co-Authored-By: eric@wolfssl.com <eric@wolfssl.com >
2025-03-17 20:25:15 +00:00
Eric Blankenhorn
098358c217
Add WOLFSSL_AESCTR to WOLFSSL_CLU cmake option
2025-03-17 13:34:15 -05:00
Brett Nicholas
c7db28ef5a
merge --no-default-devid configure option into --enable-cryuptocb=no-default-devid
2025-03-17 12:15:32 -06:00
res0nance
c697f87bda
random: correct debug messages
2025-03-17 21:12:51 +08:00
Sean Parkinson
4e60e9fbed
Merge pull request #8559 from anhu/ifndef_shake
...
Check if WOLFSSL_SHAKExxx is not defined
2025-03-17 09:54:36 +10:00
Sean Parkinson
663ca29a5d
Split out tests: random, wolfmath, public key
...
Improved testing of random APIs.
wolfmath tests moved out.
Public key algorithm testing moved out: RSA, DSA, DH, ECC, SM2,
Curve25519, Ed25519, Curve448, Ed448, ML-DSA.
Signature API tests moved out.
Fix for OCSP testing to ensure RSA is available.
Added group names to API test cases.
Can select groups to run with --group <name>. --groups lists all known
group names.
Added option to stop API testing on first failure: --stopOnFail.
2025-03-17 09:32:00 +10:00
Eric Blankenhorn
e44ccda931
Fix ED25519 definition when WOLFSSL_CLU is enabled
2025-03-14 16:40:31 -05:00
Devin AI
e9fadcc86e
Fix NO_DES3 definition when WOLFSSL_CLU is enabled
...
Co-Authored-By: eric@wolfssl.com <eric@wolfssl.com >
2025-03-14 21:12:09 +00:00
Daniel Pouzzner
bc7fbee539
Merge pull request #8528 from SparkiDev/digest_test_rework_2
...
Digest tests: add more tests
2025-03-14 16:11:42 -05:00
Devin AI
dbc2017cc7
Fix OPENSSL_ALL definition for WOLFSSL_CLU option
...
Co-Authored-By: eric@wolfssl.com <eric@wolfssl.com >
2025-03-14 20:03:00 +00:00
kaleb-himes
7a53301265
XTS fixups in optesting
2025-03-14 13:11:00 -06:00
kaleb-himes
9253d37dc9
Fix after upstream merge changed NO_MAIN_DRIVER requirements for harness
2025-03-14 13:08:57 -06:00
kaleb-himes
d274ed291f
Restore default start setup
2025-03-14 13:08:57 -06:00
kaleb-himes
14bef2f6c8
Checkin XCODE settings for v6.0.0 module
2025-03-14 13:08:57 -06:00
Kaleb Himes
6188c9c342
Merge pull request #8563 from douzzer/20250313-various-fixes
...
20250313-various-fixes
2025-03-14 10:47:19 -06:00
Daniel Pouzzner
b9111aae99
wolfssl/wolfcrypt/types.h: refactor assert.h gate as WOLFSSL_HAVE_ASSERT_H && !WOLFSSL_NO_ASSERT_H.
...
wolfssl/wolfcrypt/settings.h: #ifdef WOLFSSL_LINUXKM, #undef WOLFSSL_HAVE_ASSERT_H and #define WOLFSSL_NO_ASSERT_H.
2025-03-14 02:11:58 -05:00
Daniel Pouzzner
87c0ac90b8
configure.ac:
...
* sense assert.h and define WOLFSSL_HAVE_ASSERT_H accordingly.
* force off enable_aesgcm_stream if 32 bit armasm or riscv-asm (not yet implemented or buildable).
* add AM_CONDITIONAL([BUILD_CHACHA_NOASM, ...]) when --enable-chacha=noasm.
src/include.am: gate armasm/riscv_asm chacha files on !BUILD_CHACHA_NOASM.
tests/api.c: add missing HAVE_CHACHA&&HAVE_POLY1305 gate around test_TLSX_CA_NAMES_bad_extension().
wolfcrypt/src/chacha.c: tweak WOLFSSL_ARMASM and WOLFSSL_RISCV_ASM codepaths to also depend on !NO_CHACHA_ASM.
wolfssl/wolfcrypt/types.h: in setup for wc_static_assert(), #include <assert.h> if WOLFSSL_HAVE_ASSERT_H, >=C11, or >=C++11.
2025-03-13 23:17:57 -05:00
Daniel Pouzzner
37909e9707
Merge pull request #8561 from SparkiDev/poly1305-arm32-asm-fix
...
Poly1305 ARM32 assembly code: loading with ldm
2025-03-13 22:10:41 -05:00
Sean Parkinson
97a646661f
Poly1305 ARM32 assembly code: loading with ldm
...
Loading message with ldm, that requires aligned pointers, when 64n +
16*[1-3] bytes are to be processed.
2025-03-14 11:05:48 +10:00
Brett Nicholas
b7764e9308
add support for WC_NO_DEFAULT_DEVID to configure
2025-03-13 14:51:05 -06:00
Anthony Hu
85e9f73868
Check if WOLFSSL_SHAKExxx is not defined
2025-03-13 13:22:20 -04:00
JacobBarthelmeh
2125cbd98e
Merge pull request #8552 from douzzer/20250312-linuxkm-lkcapi-aes-cfb-fixes
...
20250312-linuxkm-lkcapi-aes-cfb-fixes
2025-03-12 21:06:27 -06:00
Hideki Miyazaki
a18ac7c3ec
fix PRB test failure
2025-03-13 11:12:26 +09:00
Hideki Miyazaki
9188e0a801
fix PR test failures
2025-03-13 09:48:34 +09:00
Hideki Miyazaki
b39c2206d7
modified client chain at server side
...
added unit test
2025-03-13 09:39:13 +09:00
Hideki Miyazaki
d6c0184fda
fix qt jenkins failure
2025-03-13 09:39:13 +09:00
Sean Parkinson
74454715ec
ECH: generate multiple configs and rotate echConfigs
...
Change wolfSSL_CTX_GenerateEchConfig to generate multiple configs, add
functions to rotate the server's echConfigs.
2025-03-13 10:24:53 +10:00
Sean Parkinson
93acd466a7
Merge pull request #6805 from jpbland1/ech-hello-retry
...
Ech hello retry request
2025-03-13 09:17:58 +10:00
Brett Nicholas
8e3e60e4e2
adds WC_NO_DEFAULT_DEVID to disallow automatic use of "default" devId
2025-03-12 16:53:25 -06:00
Daniel Pouzzner
c80a050c29
linuxkm/lkcapi_glue.c: fix aes-cfb wrappers, and add
...
WOLFSSL_DEBUG_TRACE_ERROR_CODES support for EINVAL/ENOMEM/EBADMSG;
configure.ac: remove ENABLED_EXPERIMENTAL requirement for
--enable-linuxkm-lkcapi-register=cfb(aes);
linuxkm/module_hooks.c: omit "skipping full wolfcrypt_test" message if
wc_RunAllCast_fips() was run.
2025-03-12 17:08:04 -05:00
Kareem
88fdfdd52d
Change #pragma GCC macros in sp_int.c to PRAGMA_GCC macros to avoid calling them on unsupported toolchains.
2025-03-12 12:12:24 -07:00
Lealem Amedie
950be33c57
Insert STM32WBA52xx in the right order
2025-03-12 11:58:18 -06:00
Lealem Amedie
e13bf4bd7c
Add STM32WBA52xx to known macros
2025-03-12 11:08:26 -06:00
Kaleb Himes
517f4bd561
Merge pull request #8549 from douzzer/20250311-aesxts-stream-armasm-and-unit-test-wolfcrypt-test
...
20250311-aesxts-stream-armasm-and-unit-test-wolfcrypt-test
2025-03-12 10:18:39 -06:00
Daniel Pouzzner
d2fc77ae93
wolfcrypt/test/test.c: add missing PRIVATE_KEY_UNLOCK()s around pkcs7enveloped_test() and pkcs7authenveloped_test() exposed by "--enable-fips=ready --enable-pkcs7 --disable-harden".
2025-03-11 17:10:54 -05:00
Lealem Amedie
96b8d72c4f
Add support for STM32WBA
2025-03-11 15:16:26 -06:00
Daniel Pouzzner
9a84dfc86a
add wolfcrypt_test() to unit_test(); remove call to HashTest() and delete
...
tests/hash.c (entire file duplicates code in wolfcrypt/test/test.c, originally
ctaocrypt/test/test.c).
2025-03-11 14:59:07 -05:00
Daniel Pouzzner
2de3d46971
wolfcrypt/test/test.c: in cryptocb_test(), fix error code from
...
wc_CryptoCb_RegisterDevice(), and call wc_CryptoCb_UnRegisterDevice() at
cleanup.
2025-03-11 14:51:25 -05:00
Daniel Pouzzner
2a4dbbf545
configure.ac: remove mutual exclusion of armasm and WOLFSSL_AESXTS_STREAM --
...
this now works, and uses armasm-accelerated _AesEcb{En,De}crypt() via
_AesXtsHelper(). also, add -DNO_CRYPT_TEST to CFLAGS in builds with
$ENABLED_CRYPT_TESTS = no.
2025-03-11 14:47:32 -05:00
Devin AI
7c84200dda
Add WOLFSSL_CLU option to cmake.yml workflow
...
Co-Authored-By: eric@wolfssl.com <eric@wolfssl.com >
2025-03-11 17:05:26 +00:00
Devin AI
60dc30326c
Add WOLFSSL_CLU option to CMakeLists.txt
...
Co-Authored-By: eric@wolfssl.com <eric@wolfssl.com >
2025-03-11 15:50:31 +00:00
Daniel Pouzzner
fb23b487eb
Merge pull request #8546 from kaleb-himes/WCv6.0.0-RC5-UPDT
...
Update fips-check.sh to pickup XTS streaming support on aarch64
2025-03-10 18:09:25 -05:00
Anthony Hu
b608946549
Guard fix.
2025-03-10 17:32:58 -04:00
kaleb-himes
e7b3fec1fb
Update fips-check.sh to pickup XTS streaming support on aarch64
2025-03-10 13:37:42 -06:00
John Bland
c48b4f2d86
add missing echX NULL check
2025-03-10 11:11:27 -04:00
John Bland
9b65bc22f1
fix uninitialized variable error
2025-03-10 10:18:48 -04:00
John Bland
a344ba1eb2
add missing echConfigs check
2025-03-10 09:35:40 -04:00
John Bland
1fd952d6d0
fix bad ech transaction hash calculations
2025-03-10 09:12:13 -04:00
John Bland
8ff08740f8
Merge branch 'master' into ech-hello-retry
2025-03-10 03:37:27 -04:00
Sean Parkinson
a7690ca24b
ML-KEM/Kyber: finish name change
2025-03-10 08:37:14 +10:00
Sean Parkinson
e7ef3ab606
Digest tests: add more tests
...
Add testing of MD2 and Md4.
Add more tests of functions in hash.c.
Reformat data to match what is output by PRINT_DATA macro.
2025-03-10 08:13:06 +10:00
jordan
f91f9bf037
coverity: pacify test_md5 uninitialized scalar variable warning.
2025-03-09 16:03:21 -04:00
David Garske
ad8eb760e3
Merge pull request #8540 from douzzer/20250307-misc-xorbuf-optimizer
...
20250307-misc-xorbuf-optimizer
2025-03-08 15:51:54 -08:00
Daniel Pouzzner
a84831c47f
disable .github/workflows/msys2.yml -- failing unit test on its ucrt64 scenario, then the test script wedged on retry after successfully make checking.
2025-03-07 20:11:58 -06:00
Daniel Pouzzner
cbcca93fde
configure.ac: print a warning, not an error, on "Conflicting asm settings", for backward compatibility.
2025-03-07 19:52:26 -06:00
Daniel Pouzzner
66376bed28
wolfcrypt/src/misc.c: in xorbufout() and xorbuf(), call XorWords() directly via a simplified path if all args are already aligned to WOLFSSL_WORD_SIZE (fixes performance regression from dc2e2631bc).
...
configure.ac: add a "Conflicting asm settings" error check at end, since our configuration currently blows up if --enable-intelasm and --disable-asm are combined.
2025-03-07 19:52:26 -06:00
Daniel Pouzzner
c3f24568ff
Merge pull request #8520 from JacobBarthelmeh/pkcs7_verify_stream
...
PKCS7 verify and decode indefinite length support
2025-03-07 18:47:30 -06:00
Daniel Pouzzner
27ed748867
Merge pull request #8504 from rlm2002/msys2
...
Add MSYS2 build CI test
2025-03-07 17:58:50 -06:00
Anthony Hu
6d6c5f520b
unit tests
2025-03-07 18:30:41 -05:00
JacobBarthelmeh
8dd614430a
clang-tidy fixes for test case
2025-03-07 16:04:57 -07:00
David Garske
aff17b7139
Merge pull request #8541 from night1rider/zephyr-asm
...
Adding missing files for zephyr compile for ASM
2025-03-07 14:38:51 -08:00
msi-debian
c8eb3b07a0
Kconfig update for new setting
2025-03-07 14:19:33 -07:00
msi-debian
3587e28966
Adding missing files for zephyr compile for ASM
2025-03-07 14:16:02 -07:00
JacobBarthelmeh
09ffdeb897
fix for different reported conversion warnings
2025-03-07 11:52:01 -07:00
jordan
1b404e8449
tests quic: fix assignment where comparison intended warning.
2025-03-07 13:38:40 -05:00
Anthony Hu
f8506c3e04
Allow critical alt and basic constraints extensions
...
Also properly track pathlen.
2025-03-07 13:06:06 -05:00
JacobBarthelmeh
53fa4ffbaf
conversion warning fixes
2025-03-07 11:03:12 -07:00
jordan
0950955b14
tests quic: fix c89 clang tidy warning.
2025-03-07 10:32:25 -05:00
jordan
40588574ce
tests quic: clean up line lengths.
2025-03-07 09:19:13 -05:00
jordan
cad2189e80
tests quic: fix error handling.
2025-03-07 08:08:37 -05:00
Sean Parkinson
5729923469
Merge pull request #8538 from douzzer/20250306-Wconversion-fixes-and-tests
...
20250306-Wconversion-fixes-and-tests
2025-03-07 13:22:05 +10:00
Daniel Pouzzner
3ada6e29aa
.github/workflows/wolfCrypt-Wconversion.yml: remove -m32 scenario due to missing dependencies, and render early the full config under test for easier debugging.
2025-03-06 17:48:03 -06:00
Daniel Pouzzner
932513a41e
fixes for various -W*conversions in sp_int.c, asn.c, fe_operations.c, fe_448.c, ge_448.c. also, add support for NO_INT128, and add .github/workflows/wolfCrypt-Wconversion.yml.
2025-03-06 16:08:38 -06:00
jordan
6a45c8ee0e
tests quic: fix uninitialized vars.
2025-03-06 16:14:39 -05:00
jordan
8d90e321c4
coverity: tests quic cleanup.
2025-03-06 15:32:21 -05:00
kareem-wolfssl
acc096c2ea
Merge pull request #8533 from dgarske/eccnb
...
Fixes for ECC non-blocking tests
2025-03-06 11:08:43 -07:00
JacobBarthelmeh
8e98a41401
fix for build with NO_PKCS7_STREAM
2025-03-06 10:43:02 -07:00
David Garske
547519265a
Merge pull request #8534 from douzzer/20250305-linuxkm-LKCAPI-AES-CBC-fixes
...
20250305-linuxkm-LKCAPI-AES-CBC-fixes
2025-03-06 08:44:05 -08:00
Daniel Pouzzner
f572cffa31
.wolfssl_known_macro_extras: remove unneeded entry.
2025-03-05 18:44:08 -06:00
JacobBarthelmeh
b039e055df
clang-tidy warning of garbage value used
2025-03-05 17:19:53 -07:00
David Garske
1bd3bf1b66
Merge pull request #8531 from night1rider/zephyr-fs-rewind-fix
...
Fix for missing rewind function in zephyr
2025-03-05 16:04:36 -08:00
David Garske
dfc6a52db5
Fixes for ECC non-blocking tests. Added example user_settings.h build test. Demonstrate ECC 256, 384 and 521 bit.
2025-03-05 15:58:51 -08:00
Daniel Pouzzner
d82a7b10c5
wolfcrypt/src/evp.c: fix a name conflict around "cipherType" that provokes -Wshadow on gcc pre-4v8.
2025-03-05 17:56:08 -06:00
Daniel Pouzzner
dc2e2631bc
linuxkm: various fixes for LKCAPI wrapper for AES-CBC (now passing kernel-native
...
self-test and crypto fuzzer), and de-experimentalize it.
wolfssl/wolfcrypt/types.h: add definitions for WOLFSSL_WORD_SIZE_LOG2.
wolfcrypt/src/misc.c: fix xorbuf() to make the XorWords() reachable; also,
refactor integer division and modulus ops as masks and shifts, and add pragma
to suppress linuxkm FORTIFY_SOURCE false positive -Wmaybe-uninitialized.
2025-03-05 17:56:08 -06:00
Daniel Pouzzner
7d102a1816
Merge pull request #8530 from SparkiDev/test_dual_alg_support_dates_fix
...
Test daul alg support: set before and after dates
2025-03-05 17:55:38 -06:00
JacobBarthelmeh
624233fb98
update test case to account for NO_DES3 build and resolve clang tidy warnings
2025-03-05 16:28:26 -07:00
Devin AI
c1215aa93b
Fix wc_MlKemKey_Free to return int instead of void
...
Co-Authored-By: sean@wolfssl.com <sean@wolfssl.com >
2025-03-05 22:42:19 +00:00
Devin AI
f4b770c5ab
Update Kyber APIs to ML-KEM APIs
...
- Change struct KyberKey to struct MlKemKey
- Add backward compatibility typedef for KyberKey
- Add function declarations for new wc_MlKemKey_ functions
- Add backward compatibility #defines to map old wc_KyberKey APIs to new wc_MlKemKey APIs
- Update wc_MlKemKey_Init to take key first and type second
- Create new files wc_mlkem.h and wc_mlkem.c with updated content
- Update internal APIs with lowercase kyberkey to lowercase mlkemkey
Co-Authored-By: sean@wolfssl.com <sean@wolfssl.com >
2025-03-05 22:38:07 +00:00
JacobBarthelmeh
68e483d196
refactor of decode envelop for edge cases
2025-03-05 15:24:02 -07:00
Daniel Pouzzner
9fc7e42554
Merge pull request #8507 from SparkiDev/ct_fixes_3
...
Constant time code: improved implementations
2025-03-05 15:17:23 -06:00
msi-debian
7ea89a62ba
Fix for missing rewind function in zephyr
2025-03-05 12:49:58 -07:00
Sean Parkinson
eaa61c2208
Test daul alg support: set before and after dates
...
Must set before and after dates into certificate structure as creation
of certificate does not fill in those fields but uses the current time.
The current time may change by a second between signings.
2025-03-05 16:15:55 +10:00
David Garske
a073868cf0
Merge pull request #8527 from SparkiDev/sp_int_asm_fixes_1
...
SP int: inline asm improvements and mont reduce simplifications
2025-03-04 14:45:16 -08:00
JacobBarthelmeh
b75976692e
spelling fix and code formatting
2025-03-04 14:31:23 -07:00
David Garske
49122f36e9
Merge pull request #8526 from gasbytes/add-middlebox-compat-to-enable-jni
...
Enable TLS 1.3 middlebox compatibility by default with --enable-jni
2025-03-04 09:11:28 -08:00
JacobBarthelmeh
4124c824ca
refactor decrypt content init call
2025-03-04 09:29:36 -07:00
Sean Parkinson
caf801f211
SP int: inline asm improvements and mont reduce simplifications
...
SP int inline asm:
- allow input variables to be either registers or memory for Intel
x86/x64 (minor performance improvement)
- don't have memory in clobber list if output variables are registers
- remove empty clobber line in arm32/thumb2 code for old versions of
gcc
_sp_mont_red():
- simplify the code by not using extra variables
- don't add to j in for loop check.
2025-03-04 16:16:26 +10:00
David Garske
9b16ed5da4
Merge pull request #8518 from lealem47/evp_update_null_cipher
...
Add NULL_CIPHER_TYPE support to wolfSSL_EVP_CipherUpdate
2025-03-03 14:03:57 -08:00
David Garske
2b099daee0
Merge pull request #8511 from SparkiDev/intel_sha_not_avx1
...
SHA256: Intel flags has SHA but not AVX1 or AVX2
2025-03-03 13:59:10 -08:00
Ruby Martin
b64f509d1b
define NO_WRITE_TEMP_FILES
2025-03-03 10:14:06 -07:00
Reda Chouk
3e5e81c45f
Enable TLS 1.3 middlebox compatibility by default with --enable-jni
...
Adding -DWOLFSSL_TLS13_MIDDLEBOX_COMPAT flag to the default
compilation flags when --enable-jni is used.
Related PRs in other repositories:
- wolfSSL/wolfssljni#255
- wolfSSL/testing#845
2025-03-03 14:12:20 +01:00
JacobBarthelmeh
fcf88f16e6
spelling fixes and free decrypt structs on error case
2025-03-01 15:43:59 -07:00
David Garske
72d08a1a79
Merge pull request #8522 from douzzer/20250228-fixes
...
20250228-fixes
2025-02-28 18:17:31 -08:00
Daniel Pouzzner
058014b3eb
src/ssl.c: add missing !NO_WOLFSSL_SERVER gate around wolfSSL_get_servername().
2025-02-28 19:07:03 -06:00
Daniel Pouzzner
d6b5c8e8ee
src/ssl_asn1.c: fix misspelling cause by overbroad search+replace.
2025-02-28 18:25:41 -06:00
Daniel Pouzzner
de6ac319cc
.wolfssl_known_macro_extras: remove unneeded entries.
2025-02-28 18:01:49 -06:00
Lealem Amedie
59a987aa00
Remove trailing whitespace
2025-02-28 16:06:24 -07:00
JacobBarthelmeh
b781ac6c29
asn to der macro gaurds and co-exist build fix
2025-02-28 15:42:24 -07:00
Daniel Pouzzner
9c3816089c
tests/api.c: disable test_wolfSSL_OCSP_parse_url() if WOLFSSL_SM2 || WOLFSSL_SM3.
2025-02-28 15:58:54 -06:00
JacobBarthelmeh
6020bf2368
initialize test variables and fix async build
2025-02-28 14:46:42 -07:00
JacobBarthelmeh
ea9f044bcc
spelling fixes and return value fix
2025-02-28 14:34:51 -07:00
Daniel Pouzzner
50a3be6df7
wolfcrypt/src/sp_int.c. src/ssl_asn1.c. src/internal.c: rename several declarations to avoid shadowing global functions, for the convenience of obsolete (pre-4v8) gcc -Wshadow.
2025-02-28 15:29:58 -06:00
Daniel Pouzzner
f7b911f5cd
src/ssl.c, src/internal.c: fix leak in wolfSSL_get_ciphers_compat(): fix gating (OPENSSL_EXTRA, not OPENSSL_ALL) in FreeSuites() re .suitesStack and .clSuitesStack, and similarly fix gating on the implementation of wolfSSL_sk_SSL_CIPHER_free(() and related.
...
src/ssl_sess: suppress false positive clang-analyzer-unix.Malloc "Argument to 'free()' is the address of a global variable".
2025-02-28 15:23:43 -06:00
JacobBarthelmeh
ea387323c3
remove white space and add macro guard around test case
2025-02-28 14:23:25 -07:00
JacobBarthelmeh
638d9961d2
passing the rest of the PKCS7 unit tests
2025-02-28 14:23:24 -07:00
JacobBarthelmeh
7c6cd1deea
passing a unit test
2025-02-28 14:23:24 -07:00
JacobBarthelmeh
1e254c014d
application decryption successful
2025-02-28 14:23:24 -07:00
JacobBarthelmeh
b1b1c15b35
add content stream output callback for VerifySignedData function
2025-02-28 14:23:24 -07:00
Lealem Amedie
08a314e57e
Add test src file to CMake build
2025-02-28 11:54:19 -07:00
Lealem Amedie
22221e5007
Add NULL_CIPHER_TYPE support to wolfSSL_EVP_CipherUpdate
2025-02-28 11:44:30 -07:00
Daniel Pouzzner
7698546531
Merge pull request #8515 from SparkiDev/test_sha512_be
...
Tests api.c: sha512 big endian
2025-02-28 00:51:54 -06:00
Sean Parkinson
14651edae0
Tests api.c: sha512 big endian
...
Don't need to reverse bytes for SHA-512 Transform API.
2025-02-28 14:58:43 +10:00
Sean Parkinson
4f8a39cbcf
Merge pull request #8498 from rizlik/ocsp_fixes
...
OCSP openssl compat fixes
2025-02-28 13:42:50 +10:00
Daniel Pouzzner
d63a180f95
Merge pull request #8513 from SparkiDev/api_c_split_ciphers
...
Test api.c: split out MACs and ciphers
2025-02-27 14:00:36 -06:00
Marco Oliverio
194db7e844
tests: gate ocsp test on SM2 || SM3
...
we don't properly support SM2 and SM3 hash algo id properly yet
2025-02-27 19:38:46 +00:00
Marco Oliverio
83f5644549
ocsp: Fix OcspEncodeCertID SetAlgoID return check
2025-02-27 19:38:44 +00:00
Marco Oliverio
814f0f8a09
Refactor CERT_ID encoding as per review comments
2025-02-27 12:50:37 +00:00
Sean Parkinson
48300352c6
Test api.c: split out MACs and ciphers
2025-02-27 15:52:39 +10:00
Sean Parkinson
7d0ef5bd42
Merge pull request #8512 from douzzer/20250226-fixes
...
20250226-fixes
2025-02-27 14:48:05 +10:00
Daniel Pouzzner
f7ddc49487
linuxkm/linuxkm_wc_port.h: add #error if the user tries to use the kernel crypto fuzzer with FIPS AES-XTS (kernel bug).
...
src/internal.c: fix shiftTooManyBitsSigned in DefTicketEncCb().
tests/api/test_sha256.c and wolfssl/wolfcrypt/sha256.h: gate raw transform APIs (wc_Sha256Transform(), wc_Sha256FinalRaw()) and tests on !defined(WOLFSSL_KCAPI_HASH) && !defined(WOLFSSL_AFALG_HASH).
move enum wc_HashFlags from wolfssl/wolfcrypt/hash.h to wolfssl/wolfcrypt/types.h to resolve circular dependency detected by cross-armv7m-armasm-thumb-fips-140-3-dev-sp-asm-all-crypto-only.
add FIPS_VERSION_GE(7,0) gates to new null-arg tests in test_wc_Shake{128,256}_*().
optimize ByteReverseWords() for cases where only one operand is unaligned, and add correct handling of unaligned data in ByteReverseWords64() to resolve unaligned access sanitizer report in cross-aarch64_be-all-sp-asm-unittest-sanitizer.
2025-02-26 20:55:56 -06:00
Sean Parkinson
0a6a8516f9
Merge pull request #8488 from dgarske/stm32h7s
...
Support for STM32H7S (tested on NUCLEO-H7S3L8)
2025-02-27 10:34:41 +10:00
Sean Parkinson
a0d6afbb04
Merge pull request #8505 from jmalak/ow-fixes
...
various fixes for Open Watcom build
2025-02-27 10:31:19 +10:00
Daniel Pouzzner
183d9b44d1
Merge pull request #8509 from kaleb-himes/WCv6.0.0-RC4-CHECKIN
...
Disable XTS-384 as an allowed use in FIPS mode
2025-02-26 18:24:12 -06:00
Sean Parkinson
c290907228
Merge pull request #8510 from wolfSSL/devin-lifeguard/update-rules-d59f9c48
...
Update Devin Lifeguard rules
2025-02-27 09:40:48 +10:00
Sean Parkinson
99f25c6399
Merge pull request #8494 from Laboratory-for-Safe-and-Secure-Systems/various
...
Various fixes and improvements
2025-02-27 09:40:06 +10:00
Sean Parkinson
b104887042
SHA256: Intel flags has SHA but not AVX1 or AVX2
...
Reversal of bytes when IS_INTEL_SHA only is same as when AVX1 or AVX2.
2025-02-27 09:25:13 +10:00
David Garske
92ed003a58
Merge pull request #8502 from SparkiDev/pkcs_pad
...
PKCS Pad: public API to do PKCS padding
2025-02-26 15:17:50 -08:00
David Garske
512f928650
Fix cast warnings with g++.
2025-02-26 14:45:23 -08:00
Sean Parkinson
f204ac8363
PKCS Pad: public API to do PKCS padding
...
PKCS padding adds length of padding as repeated padding byte.
Use the new function in all places.
2025-02-27 08:28:53 +10:00
devin-ai-integration[bot]
615d7229b0
Update Devin Lifeguard rules
2025-02-26 22:19:57 +00:00
David Garske
307b71c0f4
Merge pull request #8508 from SparkiDev/arm_asm_sha512_384
...
ARM ASM: available for SHA-384 only too
2025-02-26 14:11:27 -08:00
David Garske
557abcf76a
Support for STM32H7S (tested on NUCLEO-H7S3L8). It supports hardware crypto for RNG, Hash, AES and PKA. Added future config option for DTLS v1.3. Support DTLS v1.3 only reduce code size (tested with: ./configure --enable-dtls13 --enable-dtls --disable-tlsv12 CFLAGS="-DWOLFSSL_SEND_HRR_COOKIE").
2025-02-26 14:00:48 -08:00
kaleb-himes
738462a6f0
Remove redundent gates
2025-02-26 12:03:25 -07:00
kaleb-himes
b8a383469a
Disable 192-bit tests in FIPS mode
2025-02-26 11:09:31 -07:00
Ruby Martin
0c413e75c6
add environment matrix to msys workflow
2025-02-26 09:07:16 -07:00
Ruby Martin
439012dd57
adjust xfopen commands
2025-02-26 09:05:53 -07:00
Ruby Martin
6fed2fe447
include cygwin and msys2 ostypes to oscp-stapling tests
2025-02-26 09:05:53 -07:00
Ruby Martin
57646a88ff
check if clientfd != SOCKET_INVALID not 0, add check if USE_WINDOWS_API
...
not defined
2025-02-26 09:03:55 -07:00
Ruby Martin
d37e566d5d
msys2 build file
2025-02-26 08:10:59 -07:00
kaleb-himes
9063093993
Disable XTS-384 as an allowed use in FIPS mode
2025-02-26 07:38:45 -07:00
Tobias Frauenschläger
75d63071df
Fix memory leak in handshake
...
Make sure peer dilithium keys are properly freed.
Signed-off-by: Tobias Frauenschläger <tobias.frauenschlaeger@oth-regensburg.de >
2025-02-26 15:34:00 +01:00
Tobias Frauenschläger
491e70be7a
PSK fix
...
Fix compilation in case PSK is enabled, not Session tickets are
disabled.
Signed-off-by: Tobias Frauenschläger <tobias.frauenschlaeger@oth-regensburg.de >
2025-02-26 15:33:59 +01:00
Tobias Frauenschläger
3d4ec1464b
Minor Dilithium fix
...
Fix compilation in case caching is enabled.
Signed-off-by: Tobias Frauenschläger <tobias.frauenschlaeger@oth-regensburg.de >
2025-02-26 15:33:59 +01:00
Tobias Frauenschläger
af4017132d
LMS fixes
...
* Add support for CMake
* Add support for Zephyr
* Make sure the internal key state is properly handled in case a public
key is imported into a reloaded private key.
Signed-off-by: Tobias Frauenschläger <tobias.frauenschlaeger@oth-regensburg.de >
2025-02-26 15:33:59 +01:00
Tobias Frauenschläger
9db5499dbd
Update CryptoCb API for Dilithium final standard
...
Add context and preHash metadata.
Signed-off-by: Tobias Frauenschläger <tobias.frauenschlaeger@oth-regensburg.de >
2025-02-26 15:33:59 +01:00
Tobias Frauenschläger
be6888c589
Fixes for Dilithium in TLS handshake
...
Some fixes to better handle Dilithium keys and signatures in the TLS
handshake.
Signed-off-by: Tobias Frauenschläger <tobias.frauenschlaeger@oth-regensburg.de >
2025-02-26 15:33:59 +01:00
Jiri Malak
b5ba7a6fcc
correct Open Watcom linker extra libraries
2025-02-26 11:03:36 +01:00
Jiri Malak
47d130440d
remove now useless __WATCOMC__ macro check
2025-02-26 10:26:28 +01:00
Jiri Malak
17a0081261
correct line length to be shorter then 80 characters
2025-02-26 08:02:43 +01:00
Sean Parkinson
9e9efeda28
ARM ASM: available for SHA-384 only too
...
Add HAVE_SHA384 to check for whether assembly code is available.
2025-02-26 16:10:21 +10:00
Sean Parkinson
4752bd2125
Constant time code: improved implementations
...
Change constant time code to be faster.
2025-02-26 11:52:09 +10:00
Jiri Malak
a83cf8584d
add new macro __UNIX__ to the list of known macros
2025-02-26 01:22:25 +01:00
Marco Oliverio
07c7b21b10
tests: api: fix test for d2i_CERT_ID refactor
2025-02-25 22:22:43 +00:00
Marco Oliverio
5eef98a5ea
ocsp: add OCSP CERT ID encode/decode test
2025-02-25 22:22:43 +00:00
Marco Oliverio
5f05209c77
ocsp: fix wolfSSL_d2i_OCSP_CERTID
2025-02-25 22:22:43 +00:00
Jiri Malak
ddfbbc68ac
various fixes for Open Watcom build
...
- fix build for OS/2
- fix build for Open Watcom 1.9
2025-02-25 22:52:36 +01:00
David Garske
3557cc764a
Merge pull request #8501 from SparkiDev/digest_test_rework
...
Digest testing: improve
2025-02-25 13:03:48 -08:00
Marco Oliverio
dfc5e61508
asn: ocsp: refactor out CERT ID decoding
...
It will be reused in d2i_CERT_ID
2025-02-25 20:20:34 +00:00
David Garske
f2c5b4e56a
Merge pull request #8500 from SparkiDev/evp_aes_gcm_test_fix
...
test_wolfssl_EVP_aes_gcm: fix for mem fail testing
2025-02-25 09:56:55 -08:00
David Garske
bac6771828
Merge pull request #8499 from SparkiDev/crl_list_fix
...
CRL: fix memory allocation failure leaks
2025-02-25 09:54:55 -08:00
David Garske
4eda5e1f7f
Merge pull request #8491 from jmalak/winsock-guard
...
correct comment for _WINSOCKAPI_ macro manipulation
2025-02-25 09:51:23 -08:00
Daniel Pouzzner
0589a34f91
Merge pull request #8135 from gasbytes/fix-conversion
...
Fix conversion on various files
2025-02-25 10:01:31 -06:00
Marco Oliverio
3bd4b35657
ocsp: support CERT_ID encoding in i2d_OCSP_CERTID
2025-02-25 15:45:11 +00:00
Marco Oliverio
4016120f37
ocsp: populate digest type in cert_to_id
...
- Added validation for digest type in `wolfSSL_OCSP_cert_to_id` function.
- Defined `OCSP_DIGEST` based on available hash types.
- Set `hashAlgoOID` in `certId` based on `OCSP_DIGEST`.
- Updated `asn.h` to define `OCSP_DIGEST` and `OCSP_DIGEST_SIZE` based on
available hash types.
2025-02-25 15:42:44 +00:00
Marco Oliverio
740fb6bafc
test: gate ocsp test when SHA-1 is disabled
...
tests blobs contains sha-1 hashes in certificate status
2025-02-25 15:42:35 +00:00
Marco Oliverio
78ca784826
test: ocsp: fix output file name in script
2025-02-25 15:42:30 +00:00
Marco Oliverio
c24b7d1041
ocsp: use SHA-256 for responder name if no-sha
2025-02-25 15:42:27 +00:00
Marco Oliverio
8b80cb10d6
ocsp: responderID.ByKey is SHA-1 Digest len
...
Check that responderID.ByKey is exactly WC_SHA_DIGEST_SIZE as per RFC
6960. KEYID_SIZE can change across build configuration.
2025-02-25 15:42:22 +00:00
Reda Chouk
9178c53f79
Fix: Address and clean up code conversion in various files.
2025-02-25 11:17:58 +01:00
Sean Parkinson
6016cc0c97
Digest testing: improve
...
Make testing digests consistent.
Add KATs for all digests.
Check unaligned input and output works.
Perform chunking tests for all digests.
Fix Blake2b and Blake2s to checkout parameters in update and final
functions.
Fix Shake256 and Shake128 to checkout parameters in absorb and squeeze
blocks functions.
Add default digest size enums for Blake2b and Blake2s.
2025-02-25 19:07:20 +10:00
Sean Parkinson
6f268c4369
CRL: fix memory allocation failure leaks
...
On memory allocation failure, some functions were leaking memory.
Also add reference counting to CRL object so that a deep copy of a list
of CRLs doesn't leak memory.
The test was explicitly freeing each CRL in the list.
2025-02-25 09:05:03 +10:00
Sean Parkinson
ac1f25d6f4
test_wolfssl_EVP_aes_gcm: fix for mem fail testing
...
Fix test to not leak when memory allocation failure testing.
When not supporting AES-GCM streaming, allocation failures occur.
Always call cleanup.
2025-02-25 08:15:43 +10:00
Daniel Pouzzner
a85641574d
Merge pull request #8493 from Laboratory-for-Safe-and-Secure-Systems/pqc_clang_tidy
...
PQC Clang-tidy fixes
2025-02-24 15:37:05 -06:00
JacobBarthelmeh
146d17d134
Merge pull request #8496 from embhorn/mosquitto_cert_update
...
Add cert update to workflow
2025-02-24 11:14:33 -07:00
Eric Blankenhorn
0256b426f0
Add cert update to workflow
2025-02-24 11:26:19 -06:00
Sean Parkinson
a756010a4d
Merge pull request #8492 from douzzer/20250221-fix-Kbuild-EXPORT_SYMBOL_NS_GPL
...
20250221-fix-Kbuild-EXPORT_SYMBOL_NS_GPL
2025-02-24 22:37:29 +10:00
Tobias Frauenschläger
fd8f6e168b
PQC Clang-tidy fixes
...
Fixes two clang-tidy warnings in error cases.
Signed-off-by: Tobias Frauenschläger <tobias.frauenschlaeger@oth-regensburg.de >
2025-02-24 09:28:23 +01:00
Daniel Pouzzner
c9cf4137e7
linuxkm/Kbuild and linuxkm/module_exports.c.template: refactor using .ONESHELL, and in recipe for generating linuxkm/module_exports.c, render the namespace with a literal, with or without quotes as dictated by target kernel version. remove EXPORT_SYMBOL_NS_Q(), which didn't work right on old (pre-6.13) kernels with namespace support.
...
wolfssl/wolfcrypt/settings.h: in WOLFSSL_LINUXKM section, define NO_OLD_WC_NAMES, OPENSSL_COEXIST, etc., to avoid collisions with in-tree crypto in application sources that include both wolfssl and linux kernel native headers.
2025-02-23 15:35:33 -06:00
Daniel Pouzzner
011ade4966
.wolfssl_known_macro_extras: fix unneeded and out-of-order entries (LC_ALL=C order).
2025-02-23 15:35:33 -06:00
Daniel Pouzzner
0116ab6ca2
Merge pull request #8484 from jmalak/offsetof
...
Rename OFFSETOF macro to WolfSSL specific WC_OFFSETOF name
2025-02-23 14:45:43 -06:00
Jiri Malak
d066e6b9a5
correct comment for _WINSOCKAPI_ macro manipulation
...
The issue is with MINGW winsock2.h header file which is not compatible
with Miscrosoft version and handle _WINSOCKAPI_ macro differently
2025-02-23 11:15:38 +01:00
Jiri Malak
1d1ab2d9ff
Rename OFFSETOF macro to WolfSSL specific WC_OFFSETOF name
...
There are the following reasons for this
- it conflicts with the OFFSETOF macro in the OS/2 header (Open Watcom)
- it is compiler-specific and should use the C standard offsetof definition in the header file stddef.h
- it is more transparent unique name
2025-02-22 09:44:54 +01:00
David Garske
29c3ffb5ee
Merge pull request #8435 from JacobBarthelmeh/formatting
...
add else case to match with other statements
2025-02-21 17:21:10 -08:00
David Garske
865f96aafd
Merge pull request #7821 from Laboratory-for-Safe-and-Secure-Systems/pqc_hybrid_kex
...
Add more PQC hybrid key exchange algorithms
2025-02-21 11:28:55 -08:00
JacobBarthelmeh
5fc7d9f5f2
Merge pull request #8483 from gojimmypi/pr-fips-readme
...
Update README.md to reflect FIPS 140-3 validated Certificate #4718
2025-02-21 11:00:31 -07:00
Tobias Frauenschläger
c899f79cfa
Update key share group ranking algorithm
...
In case no user group ranking is set, all groups are now ranked equally
instead of the order in the `preferredGroup` array. This is the
behavior already indicated in the comment header of the function.
This change is necessary for applications that do not set their own
group ranking (via `wolfSSL_CTX_set_groups()` for example). When such an
application creates a TLS server and receives a ClientHello message with
multiple key shares, now the first key share is selected instead of the
one with the lowest index in the `preferredGroup` array.
Recent browsers with PQC support place two key shares in their
ClientHello message: a hybrid PQC + X25519 one and at least one
classic-only one. The hybrid one is the first one, indicating a
preference. Without this change, however, always the classic-only key
share has been selected, as these algorithms have a lower index in the
`preferredGroup` array compared to the PQC hybrids.
Tested using a patched version of NGINX.
This change also results in a different selection of a key share group
in case of a HelloRetryRequest message. For the tests, where static
ephemeral keys are used (`WOLFSSL_STATIC_EPHEMERAL`), an additional
check is necessary to make sure the correct key is used for the ECDH
calculation.
Signed-off-by: Tobias Frauenschläger <tobias.frauenschlaeger@oth-regensburg.de >
2025-02-21 18:44:51 +01:00
Tobias Frauenschläger
89491c7e36
Improvements for PQC hybrid key exchange
...
Add support for X25519 and X448 based hybrid PQC + ECC key exchange
groups. Furthermore, two new combinations with SECP curves are added to
match OQS combinations.
This also incorporates the changed order of X25519 and X448 based
combinations to place the PQC material before the ECDH material. This is
motivated by the necessity to always have material of a FIPS approved
algorithm first.
Also, codepoints are updated to reflect the latest draft standards for
pure ML-KEM and some of the hybrids. With these changes and based on the
recent additions to both enable ML-KEM final and draft versions
simultaneously, a WolfSSL TLS server is now compatible with all recent
browsers that support either the draft version of ML-KEM (Chromium based
browsers and Firefox < version 132; only when the draft version is
enabled in the build) or the final version already (Firefox > version 132).
In the process of extending support, some code and logic cleanup
happened. Furthermore, some memory leaks within the hybrid code path have
been fixed.
Signed-off-by: Tobias Frauenschläger <tobias.frauenschlaeger@oth-regensburg.de >
2025-02-21 18:44:40 +01:00
David Garske
6271d5b5a4
Merge pull request #8485 from jmalak/cmake-build
...
fix failing build if not found standard threads support
2025-02-21 09:38:33 -08:00
JacobBarthelmeh
c3d5fa6748
Merge pull request #8481 from cconlon/jniDTLS13
...
Enable DTLS 1.3 by default in `--enable-jni` build
2025-02-21 10:02:49 -07:00
Jiri Malak
000f32a5a4
fix failing tests build if not found standard threads support
...
Threads::Threads is not defined, if support not found for some reason
if custom threads support is used then it happen always
of cause some tests relates to standard threads support then it fails during build, but build is started and only some tests fail
2025-02-21 09:24:15 +01:00
JacobBarthelmeh
8ae122584c
Merge pull request #8482 from douzzer/20250220-misc-UnalignedWord64
...
20250220-misc-UnalignedWord64
2025-02-20 17:26:44 -07:00
gojimmypi
4c7538e5ac
Update README.md to reflect FIPS 140-3 validated Certificate #4718
2025-02-20 15:12:18 -08:00
Daniel Pouzzner
a05436066d
wolfcrypt/test/test.c: fix return values in camellia_test() (also fixes some false positive -Wreturn-stack-addresses from clang++).
2025-02-20 16:50:24 -06:00
Daniel Pouzzner
8aa2799aeb
wolfssl/wolfcrypt/types.h: don't define HAVE_EMPTY_AGGREGATES when defined(__cplusplus) ( fixes #8478 ).
2025-02-20 16:49:48 -06:00
JacobBarthelmeh
781d85284c
Merge pull request #8479 from SparkiDev/intel_vzeroupper
...
Intel AVX1/SSE2 ASM: no ymm/zmm regs no vzeroupper
2025-02-20 15:37:01 -07:00
Chris Conlon
9892ae0cb3
Enable DTLS 1.3 by default in --enable-jni build
2025-02-20 15:05:56 -07:00
Daniel Pouzzner
41b4ac5599
misc.c: undo changes in 82b50f19c6 "when Intel x64 build, assume able to read/write unaligned" -- provokes sanitizer on amd64, and is not portable (e.g. different behavior on Intel vs AMD). all performance-sensitive word64 reads/writes should be on known-aligned data.
2025-02-20 15:00:22 -06:00
JacobBarthelmeh
01808bebca
Merge pull request #8474 from philljj/coverity_feb_2025
...
coverity: fix test_dtls warnings.
2025-02-20 10:35:47 -07:00
JacobBarthelmeh
619a41f9da
Merge pull request #8476 from philljj/coverity_null_check
...
coverity: dereference before null check.
2025-02-20 10:33:58 -07:00
Sean Parkinson
e90e3aa7c6
Intel AVX1/SSE2 ASM: no ymm/zmm regs no vzeroupper
...
vzeroupper instruction not needed to be invoked unless ymm or zmm
registers are used.
2025-02-20 22:35:20 +10:00
jordan
95e26f5b27
coverity: dereference before null check.
2025-02-19 23:23:41 -05:00
David Garske
93000e5f14
Merge pull request #8467 from SparkiDev/kyber_improv_2
...
ML-KEM/Kyber: improvements
2025-02-19 16:42:42 -08:00
Sean Parkinson
82b50f19c6
ML-KEM/Kyber: improvements
...
ML-KEM/Kyber:
MakeKey call generate random once only for all data.
Allow MakeKey/Encapsulate/Decapsulate to be compiled separately.
Pull out public key decoding common to public and private key decode.
Put references to FIPS 140-3 into code. Rename variables to match FIPS
140-3.
Fix InvNTT assembly code for x64 - more reductions.
Split out ML-KEM/Kyber tests from api.c.
TLSX:
Store the object instead of the private key when WOLFSSL_MLKEM_CACHE_A
is defined or WOLFSSL_TLSX_PQC_MLKEM_STORE_OBJ. Faster decapsulation
when A is cached and object stored.
To store private key as normal define
WOLFSSL_TLSX_PQC_MLKEM_STORE_PRIV_KEY.
misc.c: when Intel x64 build, assume able to read/write unaligned
2025-02-20 08:14:15 +10:00
JacobBarthelmeh
539056e749
Merge pull request #8475 from embhorn/gh8473
...
Fix QUIC callback failure
2025-02-19 14:00:47 -07:00
David Garske
268326d875
Merge pull request #8408 from rizlik/ocsp-resp-refactor
...
OpenSSL Compat Layer: OCSP response improvments
2025-02-19 11:20:12 -08:00
Daniel Pouzzner
597b839217
Merge pull request #8468 from jmalak/fix-test-c89
...
correct test source file to follow C89 standard
2025-02-19 11:23:48 -06:00
Eric Blankenhorn
66ed35c910
Fix QUIC callback failure
2025-02-19 10:56:44 -06:00
JacobBarthelmeh
373a7d462a
Merge pull request #8472 from SparkiDev/ed25519_fix_tests
...
Ed25519: fix tests to compile with feature defines
2025-02-19 09:53:10 -07:00
jordan
6f1c31a816
coverity: fix macro warning.
2025-02-19 11:29:45 -05:00
jordan
9a1d60100f
coverity: fix test_dtls warnings.
2025-02-19 09:38:15 -05:00
Sean Parkinson
331a713271
Ed25519: fix tests to compile with feature defines
...
ge_operations.c: USe WOLFSSL_NO_MALLOC rather than WOLFSSL_SP_NO_MALLOC.
2025-02-19 17:41:03 +10:00
JacobBarthelmeh
393c92c3eb
Merge pull request #8464 from kaleb-himes/SRTP-WIN-PORTING
...
Porting to Windows 11 MSVS 2022
2025-02-18 16:16:14 -07:00
Jiri Malak
3c74be333e
correct test source file to follow C89 standard
...
for OpenSSL interface
2025-02-18 22:12:11 +01:00
JacobBarthelmeh
48f1c3b57d
Merge pull request #8465 from douzzer/20250217-fix-test-c89
...
20250217-fix-test-c89
2025-02-18 08:44:17 -08:00
David Garske
ff70cdf9d8
Merge pull request #8466 from douzzer/20250217-fixes
...
20250217-fixes
2025-02-17 19:39:38 -08:00
Daniel Pouzzner
258afa5493
wolfcrypt/src/pkcs7.c: in PKCS7_EncodeSigned(), check for error from SetSerialNumber().
2025-02-17 18:05:04 -06:00
Daniel Pouzzner
65f38df74d
tests/api.c: refactor several C89-incompatible dynamically constructed arrays using static const.
2025-02-17 17:47:36 -06:00
kaleb-himes
e0bc6ef9df
Porting to Windows 11 MSVS 2022
2025-02-17 16:18:10 -07:00
David Garske
a2c8168c96
Merge pull request #8460 from embhorn/gh8456
...
Fix cmake lean_tls build
2025-02-17 14:57:52 -08:00
Eric Blankenhorn
bc79803c1a
Add workflow test
2025-02-17 15:16:29 -06:00
JacobBarthelmeh
3e38bdcd2c
Merge pull request #8450 from dgarske/stm32_pka_ecc521
...
Fix for STM32 PKA ECC 521-bit support
2025-02-17 08:27:45 -08:00
Marco Oliverio
7db3c34e2b
ocsp: enable OPENSSL tlsext status cb for NGINX and HAPROXY
2025-02-17 14:53:49 +00:00
Eric Blankenhorn
1970fec190
Fix cmake lean_tls build
2025-02-17 08:17:05 -06:00
Marco Oliverio
a1d1f0ddf1
ocsp: enable SSL_CTX_set_tlsext_status_cb only in OPENSSL_ALL
2025-02-17 11:29:09 +00:00
Marco Oliverio
0945101948
ocsp: fix: remove duplicated code
2025-02-17 11:25:24 +00:00
Marco Oliverio
1eecf326fd
ocsp: use ocspReponse->heap in OcspFindSigner + minors
2025-02-17 08:59:29 +00:00
Marco Oliverio
0af092ec79
ocsp: minors
2025-02-17 08:59:29 +00:00
Marco Oliverio
a06a8b589c
ocsp: minors
2025-02-17 08:59:29 +00:00
Marco Oliverio
4351a5dd70
ocsp/test: better test assertions
2025-02-17 08:59:29 +00:00
Marco Oliverio
69116eb05d
ocsp/tests: update blobs and add license header
2025-02-17 08:59:29 +00:00
Marco Oliverio
c1c9af5cb6
minor: improve indentation of guards
2025-02-17 08:59:29 +00:00
Marco Oliverio
3724094ce2
ocsp: add test for response with unusable internal cert
...
- Added a new test case `resp_bad_embedded_cert` in
`create_ocsp_test_blobs.py` to test OCSP response with an unusable
internal cert that can be verified in Cert Manager.
- Updated `test_ocsp_response_parsing` in `ocsp.c` to include the new
test case.
- Ensured the new test case checks for proper handling of OCSP responses
with incorrect internal certificates.
2025-02-17 08:59:29 +00:00
Marco Oliverio
2c2eb2a285
ocsp: improve OCSP response signature validation
...
- search for the signer in the CertificateManager if the embedded cert
verification fails in original asn template.
2025-02-17 08:59:29 +00:00
Marco Oliverio
3e50c79c3b
tests: bind test_wolfSSL_client_server_nofail_memio HAVE_SSL_MEMIO_TESTS_DEP
2025-02-17 08:59:29 +00:00
Marco Oliverio
ae3177c439
ocsp-resp-refactor: fix tests
2025-02-17 08:59:29 +00:00
Marco Oliverio
851d74fd69
ocsp-resp-refactor: address reviewer's comments
2025-02-17 08:59:29 +00:00
Marco Oliverio
eb7904b5e5
tests/api: expose test_ssl_memio functions
2025-02-17 08:59:29 +00:00
Marco Oliverio
f782614e1e
clang tidy fixes
2025-02-17 08:59:28 +00:00
Marco Oliverio
2fe413d80f
ocsp: add tests
2025-02-17 08:59:23 +00:00
Marco Oliverio
3a3238eb9f
ocsp: refactor wolfSSL_OCSP_response_get1_basic
...
The internal fields of OcspResponse refer to the resp->source buffer.
Copying these fields is complex, so it's better to decode the response again.
2025-02-17 08:58:03 +00:00
Marco Oliverio
b7f08b81a6
ocsp: adapt ASN original to new OCSP response refactor
2025-02-17 08:58:03 +00:00
Marco Oliverio
f526679ad5
ocsp: refactor OCSP response decoding and wolfSSL_OCSP_basic_verify
...
- Search certificate based on responderId
- Verify response signer is authorized for all single responses
- Align with OpenSSL behavior
- Separate wolfSSL_OCSP_basic_verify from verification done during
decoding
2025-02-17 08:58:03 +00:00
Marco Oliverio
d7711f04ab
openssl compat: skip OCSP response verification in statusCb
...
This aligns with OpenSSL behavior
2025-02-17 08:58:02 +00:00
Marco Oliverio
dedbb2526c
ocsp: fix memory leaks in OpenSSL compat layer
2025-02-17 08:58:02 +00:00
Kaleb Himes
79744a7736
Merge pull request #8455 from douzzer/20250214-fix-wolfEntropy-configure-handling
...
20250214-fix-wolfEntropy-configure-handling
2025-02-14 17:14:29 -07:00
Daniel Pouzzner
39ed0eabff
configure.ac: fix handling of --enable-wolfEntropy (don't re-default to no in following --enable-entropy-memuse clause).
2025-02-14 15:39:42 -06:00
David Garske
842b9a3709
Merge pull request #8433 from julek-wolfssl/dtls-cid-negative-tests
...
Update DTLS CID Tests and Reorganize Test Utilities
2025-02-14 11:26:57 -08:00
Daniel Pouzzner
c9de3d63f9
Merge pull request #8453 from kaleb-himes/SRTP-KDF-SCRIPT-UPDATE
...
Update tag for v6.0.0 module checkout
2025-02-14 13:24:25 -06:00
David Garske
e529ad51fc
Merge pull request #8451 from douzzer/20240214-workflow-TEST_OPENSSL_COEXIST
...
20250214-workflow-TEST_OPENSSL_COEXIST
2025-02-14 11:12:28 -08:00
kaleb-himes
a6a15e6211
Update tag for v6.0.0 module checkout
2025-02-14 11:38:19 -07:00
Daniel Pouzzner
10d5d59977
add .github/workflows/opensslcoexist.yml. fix TEST_OPENSSL_COEXIST section of wolfssl/ssl.h for compatibility with OpenSSL <3.2. also, remove frivolous entry for WOLFSSL_HMAC_COPY_HASH in .wolfssl_known_macro_extras.
2025-02-14 12:19:12 -06:00
Daniel Pouzzner
690bb14203
tests/utils.c and tests/api/test_dtls.c: fixes for include order, re tests/unit.h.
2025-02-14 10:57:29 -06:00
David Garske
29f2767b88
Merge pull request #8441 from philljj/wolfio_comments
...
wolfio: comment ifdef endif blocks.
2025-02-14 08:55:31 -08:00
Juliusz Sosinowicz
cfa6fbfcef
Correct wolfSSL_dtls_cid_parse declaration in docs
2025-02-14 09:51:29 -06:00
David Garske
3075e57207
Whitespace and filename comment.
2025-02-14 09:51:29 -06:00
Juliusz Sosinowicz
7380ec68bb
cmake.yml: fix error and run tests with ctest
2025-02-14 09:51:29 -06:00
Juliusz Sosinowicz
825ca22bd8
Fix cmake build
2025-02-14 09:51:29 -06:00
Juliusz Sosinowicz
ede34f132b
fixup! Move dtls cid tests to tests/api/dtls.c
2025-02-14 09:51:29 -06:00
Juliusz Sosinowicz
301a9a97cc
Don't use buffer as it can shadow global declarations
2025-02-14 09:51:29 -06:00
Juliusz Sosinowicz
21dce84448
Add negative tests for DTLS CID
2025-02-14 09:51:29 -06:00
Juliusz Sosinowicz
68c27c4e5d
Move dtls cid tests to tests/api/dtls.c
2025-02-14 09:51:29 -06:00
Juliusz Sosinowicz
e02da08192
Reorganize utility functions into tests/utils.c and testsuite/utils.c
2025-02-14 09:51:29 -06:00
jordan
f2bb063ca4
wolfio: peer review comment cleanup.
2025-02-14 08:36:26 -05:00
Daniel Pouzzner
60c1558142
Merge pull request #8447 from dgarske/memleak
...
Fixed possible memory leaks
2025-02-14 00:26:09 -06:00
Daniel Pouzzner
e806bd76bb
Merge pull request #8445 from SparkiDev/perf_improv_1
...
Performance improvements
2025-02-13 23:25:47 -06:00
David Garske
86c3ee1a9d
Fix for STM32 PKA ECC 521-bit support. Issue was 65 vs 66 buffer check. ZD 19379
2025-02-13 16:41:42 -08:00
David Garske
1432bd415a
Merge pull request #8449 from ColtonWilley/x509_store_mem_leak
...
Fix memory leak in X509 STORE
2025-02-13 16:18:11 -08:00
Colton Willey
e197cdfb36
Fix memory leak in X509 STORE
2025-02-13 14:49:18 -08:00
David Garske
746aa9b171
Merge pull request #8443 from ColtonWilley/add_cert_rel_prefix
...
Add a cert relative prefix option for tests
2025-02-13 14:48:06 -08:00
David Garske
14d696952d
Merge pull request #8448 from anhu/vuln_to_support
...
Point people to support@wolfssl.com for vuln reports.
2025-02-13 14:47:37 -08:00
Anthony Hu
a5ac5aff17
an -> a
2025-02-13 14:50:32 -05:00
Anthony Hu
cab376c0ce
Point people to support@wolfssl.com for vuln reports.
2025-02-13 14:48:32 -05:00
Colton Willey
b119182c9d
Add to known macro list
2025-02-13 09:35:39 -08:00
David Garske
f943f6ff5c
Fixed possible memory leaks reported by nielsdos in PR 8415 and 8414.
2025-02-13 08:20:37 -08:00
David Garske
db0fa304a8
Merge pull request #8436 from SparkiDev/mlkem_cache_a
...
ML-KEM/Kyber: cache A from key generation for decapsulation
2025-02-12 17:29:38 -08:00
Sean Parkinson
896ec239c3
Merge pull request #8444 from douzzer/20250212-add-pq-and-c-fallback-workflows
...
20250212-add-pq-and-c-fallback-workflows
2025-02-13 10:29:15 +10:00
David Garske
846ba43a29
Merge pull request #8392 from SparkiDev/curve25519_blinding
...
Curve25519: add blinding when using private key
2025-02-12 16:20:51 -08:00
Sean Parkinson
365aac0306
Merge pull request #8393 from anhu/draft-tls-westerbaan-mldsa
...
New codepoint for MLDSA
2025-02-13 10:20:30 +10:00
Sean Parkinson
9253d1d3ac
ML-KEM/Kyber: cache A from key generation for decapsulation
...
Matrix A is expensive to calculate.
Usage of ML-KEM/Kyber is
1. First peer generates a key and sends public to second peer.
2. Second peer encapsulates secret with public key and sends to first
peer.
3. First peer decapsulates (including encapsulating to ensure same as
seen) with key from key generation.
Caching A keeps the matrix A for encapsulation part of decapsulation.
The matrix needs to be transposed for encapsulation.
2025-02-13 10:12:05 +10:00
Sean Parkinson
bfd52decb6
Performance improvements
...
AES-GCM: don't generate M0 when using assembly unless falling back to C
and then use new assembly code.
HMAC: add option to copy hashes (--enable-hash-copy
-DWOLFSSL_HMAC_COPY_HASH) to improve performance when using the same key
for multiple operations.
2025-02-13 09:55:55 +10:00
Daniel Pouzzner
5352ce06e5
add .github/workflows/{pq-all.yml,intelasm-c-fallback.yml}.
2025-02-12 17:32:41 -06:00
Sean Parkinson
bb84ebfd7a
Curve25519: add blinding when using private key
...
XOR in random value to scalar and perform special scalar multiplication.
Multiply x3 and z3 by random value to randomize co-ordinates.
Add new APIs to support passing in an RNG.
Old APIs create a new RNG.
Only needed for the C implementations that are not small.
Modified TLS and OpenSSL compat API implementations to pass in RNG.
Fixed tests and benchmark program to pass in RNG.
2025-02-13 08:52:35 +10:00
David Garske
0e474fc673
Merge pull request #8437 from LinuxJedi/SE050-changes
...
Minor SE050 improvements
2025-02-12 14:50:36 -08:00
Anthony Hu
aa59eab732
More minor mods. Now interops with oqs-provider.
2025-02-12 17:17:22 -05:00
Colton Willey
ddf7bfcb8f
Add a cert relative prefix option for tests
2025-02-12 13:59:23 -08:00
David Garske
828d79b64b
Merge pull request #8442 from douzzer/20250212-revert-8429
...
20250212-revert-8429
2025-02-12 12:30:06 -08:00
Daniel Pouzzner
3856d55d9b
Revert "Performance improvements"
...
This reverts commit ce679ef057 .
2025-02-12 12:32:47 -06:00
David Garske
fe73c5e3f2
Merge pull request #8440 from douzzer/20250211-MSVC-static-assert-features
...
20250211-MSVC-static-assert-features
2025-02-12 08:17:02 -08:00
jordan
9dfcc6a477
wolfio: comment ifdef endif blocks.
2025-02-12 09:51:51 -05:00
Anthony Hu
db25958b42
New codepoint for MLDSA and MLKEM
2025-02-11 21:11:22 -05:00
Sean Parkinson
bcd89b0592
Merge pull request #8388 from julek-wolfssl/BN_CTX_get
...
Implement BN_CTX_get
2025-02-12 08:08:58 +10:00
Daniel Pouzzner
b598a06354
Merge pull request #8439 from dgarske/fix_cmake
...
Fix CMake build
2025-02-11 15:34:44 -06:00
Daniel Pouzzner
fc5cb737ee
wolfssl/wolfcrypt/types.h: refine MSVC feature detection in setup for wc_static_assert*() macros.
2025-02-11 15:26:24 -06:00
David Garske
e6710bf483
Fix CMake build (broken with API.c refactor in PR 8413). Add GitHub CI for CMake (all).
2025-02-11 12:19:47 -08:00
Daniel Pouzzner
515bdf1320
Merge pull request #8438 from philljj/ecdsa_mldsa_test_api_fix_leak
...
test_dual_alg_ecdsa_mldsa: fix decoded cert leak.
2025-02-11 12:51:26 -06:00
David Garske
92e222b1ab
Merge pull request #8429 from SparkiDev/perf_improv_1
...
Performance improvements AES-GCM and HMAC (in/out hash copy)
2025-02-11 08:32:30 -08:00
Andrew Hutchings
cb42f18a47
Minor SE050 improvements
...
Adds two features for SE050:
1. `WOLFSSL_SE050_AUTO_ERASE`. When enabled, this will automatically
erase a key from the SE050 when `wc_ecc_free()` and friends are
called.
2. `WOLFSSL_SE050_NO_RSA`. This stops RSA offloading onto the SE050,
useful for the SE050E which does not have RSA support.
2025-02-11 16:25:06 +00:00
jordan
922cb73061
test_dual_alg_ecdsa_mldsa: fix decoded cert leak.
2025-02-11 10:58:03 -05:00
Sean Parkinson
ce679ef057
Performance improvements
...
AES-GCM: don't generate M0 when using assembly unless falling back to C
and then use new assembly code.
HMAC: add option to copy hashes (--enable-hash-copy
-DWOLFSSL_HMAC_COPY_HASH) to improve performance when using the same key
for multiple operations.
2025-02-11 10:26:51 +10:00
David Garske
be5f203274
Merge pull request #8425 from philljj/ecdsa_mldsa_test_api
...
dual alg: add ML-DSA test, and misc cleanup.
2025-02-10 15:05:44 -08:00
David Garske
ff41eee2e7
Merge pull request #8413 from SparkiDev/tests_api_digests
...
API test: move digest functions out
2025-02-10 14:51:19 -08:00
JacobBarthelmeh
96d9ebcfee
add else case to match with other statements
2025-02-10 14:53:15 -07:00
David Garske
4373e551e7
Merge pull request #8431 from LinuxJedi/SE050-fixes
...
Fix SE050 Port
2025-02-10 11:33:46 -08:00
jordan
557e43bcd7
dual alg: peer review cleanup, and more function comments.
2025-02-10 10:08:35 -05:00
Andrew Hutchings
8870b76c26
Fix SE050 Port
...
The SE050 port won't compile in the latest wolfSSL. This patch:
* Updates the documentation
* Fixes a missing `#ifdef` that breaks the build
* Changes the use of `mp_int` to `MATH_INT_T`
* Fixes compiler error with `ecc.c`
* Adds a tiny bit of extra debugging info
2025-02-10 14:27:28 +00:00
jordan
937d6d404a
dual alg: clean up comments and line lengths.
2025-02-07 09:22:16 -05:00
Juliusz Sosinowicz
e2d40288ee
Remove internal use of wolfSSL_BN_CTX_new()
2025-02-07 14:45:42 +01:00
Juliusz Sosinowicz
573dea4605
fixup! Implement BN_CTX_get
2025-02-07 14:45:19 +01:00
Sean Parkinson
8f131ff3d0
Merge pull request #8424 from douzzer/20250206-winsockapi-tweaks
...
20250206-winsockapi-tweaks
2025-02-07 13:06:44 +10:00
Daniel Pouzzner
1e17d737c8
"#undef _WINSOCKAPI_" after defining it to "block inclusion of winsock.h header file", to fix #warning in /usr/x86_64-w64-mingw32/usr/include/winsock2.h.
2025-02-06 18:41:20 -06:00
David Garske
c668a4e5a0
Merge pull request #8426 from SparkiDev/read_der_bio_small_data_fix
...
Read DER BIO: fix for when BIO data is less than seq buffer size
2025-02-06 16:21:42 -08:00
David Garske
7f1952fd9b
Merge pull request #8423 from douzzer/20250206-unit-test-helgrind-fixes
...
20250206-unit-test-helgrind-fixes
2025-02-06 16:21:03 -08:00
Sean Parkinson
3ff89f2cc2
API test: move digest functions out
...
Move all api.c tests of wolfCrypt APIs that are for digests out into
separate files.
2025-02-07 09:29:46 +10:00
Sean Parkinson
ae8b8c4164
Read DER BIO: fix for when BIO data is less than seq buffer size
...
wolfssl_read_der_bio did not not handle the length to be read from the
BIO being less than the size of the sequence buffer.
2025-02-07 08:46:49 +10:00
Daniel Pouzzner
6f044c577f
tests/api.c: add a missed "#ifdef WOLFSSL_ATOMIC_INITIALIZER" in test_AEAD_limit_server().
2025-02-06 16:32:54 -06:00
jordan
3df616ae58
dual alg: small cleanup.
2025-02-06 15:57:13 -05:00
jordan
035d4022fb
dual alg: add ML-DSA test, and misc cleanup.
2025-02-06 15:50:37 -05:00
Daniel Pouzzner
40e3f03795
tests/api.c: fix data races in test_wolfSSL_CTX_add_session_ctx_ready() using a mutex, and in test_wolfSSL_dtls_AEAD_limit() using a mutex, an atomic integer, and a volatile attribute.
...
wolfssl/wolfcrypt/wc_port.h: add WOLFSSL_ATOMIC_LOAD() and WOLFSSL_ATOMIC_STORE() definitions.
2025-02-06 00:55:44 -06:00
Sean Parkinson
e6ceb40187
Merge pull request #8391 from dgarske/cmake_watcom
...
Fixes for Watcom compiler and new CI test
2025-02-06 08:51:51 +10:00
David Garske
32263173dd
Merge pull request #8421 from anhu/pq_INSTALL_update
...
Update INSTALL file regarding PQ
2025-02-05 11:16:49 -08:00
David Garske
0857a3e593
Merge pull request #8422 from gojimmypi/pr-add-espressif_example-setting
...
Add Espressif sample user_settings.h
2025-02-04 15:21:35 -08:00
David Garske
f061e19ecb
Merge pull request #8403 from miyazakh/keytype_tsip
...
Revert TSIP_KEY_TYPE as TSIP TLS definition
2025-02-04 15:21:27 -08:00
Sean Parkinson
efd36a42cf
Merge pull request #8419 from julek-wolfssl/ascon-test-kats-readability
...
ascon: make tests more readable by moving the kat vectors into a header
2025-02-05 09:06:50 +10:00
David Garske
60c5a0ac7f
Peer review feedback. Thank you @jmalak
2025-02-04 14:32:24 -08:00
gojimmypi
0680895d7d
Add Espressif sample user_settings.h
2025-02-04 14:26:15 -08:00
David Garske
743655b9ce
Merge pull request #8402 from gojimmypi/pr-espressif-build-improvement
...
Improve Espressif make and cmake for ESP8266 and ESP32 series
2025-02-04 14:05:32 -08:00
Hideki Miyazaki
d56b623958
Trailing white-space
2025-02-05 07:03:45 +09:00
David Garske
345c969164
Fixes for Watcom compiler and new CI test
...
* Correct cmake script to support Open Watcom toolchain (#8167 )
* Fix thread start callback prototype for Open Watcom toolchain (#8175 )
* Added GitHub CI action for Windows/Linux/OS2
* Improvements for C89 compliance.
Thank you @jmalak for your contributions.
2025-02-04 12:38:52 -08:00
David Garske
f0b3c2955e
Merge pull request #8412 from SparkiDev/mlkem_kyber_small_mem
...
ML-KEM/Kyber: small memory usage
2025-02-04 11:45:01 -08:00
David Garske
1d0855fbe0
Merge pull request #8420 from douzzer/20250204-fix-null-ptr-increments
...
20250204-fix-null-ptr-increments
2025-02-04 11:11:19 -08:00
Anthony Hu
41d8eabb33
Update INSTALL file regarding PQ
2025-02-04 13:28:05 -05:00
Daniel Pouzzner
b466bde5d0
src/internal.c and src/ssl.c: in CheckcipherList() and ParseCipherList(), refactor "while (next++)" to "while (next)" to avoid clang21 UndefinedBehaviorSanitizer "applying non-zero offset 1 to null pointer".
2025-02-04 12:07:29 -06:00
David Garske
6141b5060d
Merge pull request #8418 from gojimmypi/pr-post-release-239b85c80-espressif
...
Espressif Managed Component wolfSSL 5.7.6 post-release update
2025-02-04 07:47:14 -08:00
Juliusz Sosinowicz
8b7b9636aa
Remove BN_CTX_init as its no longer in OpenSSL for a long time
2025-02-04 16:37:21 +01:00
Juliusz Sosinowicz
91bffeead3
wolfSSL_BN_CTX_get: prepend to list skipping need to traverse the list
2025-02-04 16:37:21 +01:00
Juliusz Sosinowicz
841d13e81c
Implement BN_CTX_get
2025-02-04 16:37:21 +01:00
Hideki Miyazaki
77f3b45af0
update key_data
2025-02-05 00:11:55 +09:00
David Garske
93cb9c4a5e
Merge pull request #8417 from SparkiDev/tls13_hrr_keyshare_comments
...
TLS 1.3 HRR KeyShare: Improve comments
2025-02-04 06:20:24 -08:00
Juliusz Sosinowicz
db0345c009
ascon: make tests more readable by moving the kat vectors into a header
2025-02-04 12:58:51 +01:00
Sean Parkinson
316177a7f1
ML-KEM/Kyber: small memory usage
...
Options to compile ML-KEM/Kyber to use less dynamic memory.
Only available with C code and has small performance trade-off.
2025-02-04 10:51:56 +10:00
Sean Parkinson
92491e6368
TLS 1.3 HRR KeyShare: Improve comments
...
HelloRetryRequest has the key exchange group it wants to use.
A KeyShare for that group must not have been in the ClientHello.
2025-02-04 10:16:27 +10:00
gojimmypi
71a982e6b7
sync with upstream
2025-02-03 16:13:05 -08:00
gojimmypi
962260af9d
Espressif Managed Component wolfSSL 5.7.6 post-release update
2025-02-03 15:34:33 -08:00
Sean Parkinson
eb15a1213c
Merge pull request #8416 from embhorn/zd19323
...
Clear old ssl->error after retry
2025-02-04 08:54:10 +10:00
Sean Parkinson
7898cce43c
Merge pull request #8407 from embhorn/zd19346
...
Fix compat layer ASN1_TIME_diff to accept NULL output params
2025-02-04 08:43:50 +10:00
Eric Blankenhorn
e9892c22a2
Clear old ssl->error after retry
2025-02-03 14:18:09 -06:00
Eric Blankenhorn
b488af1d34
Fix compat layer ASN1_TIME_diff to accept NULL output params
2025-01-31 15:55:35 -06:00
JacobBarthelmeh
275becab6f
Merge pull request #8406 from julek-wolfssl/krb5-spake-testing
...
Add spake to kerberos 5 testing
2025-01-31 13:45:36 -07:00
JacobBarthelmeh
4891d1c471
Merge pull request #8400 from ColtonWilley/add_trusted_cert_pem_parsing
...
Add support for parsing trusted PEM certs
2025-01-31 10:53:51 -07:00
Juliusz Sosinowicz
a48f7ce276
Add spake to kerberos 5 testing
2025-01-31 18:28:31 +01:00
JacobBarthelmeh
4abba81315
Merge pull request #8405 from anhu/thanks_tobiasbrunner
...
Fix some typoes around Kyber and Dilithium
2025-01-31 10:05:14 -07:00
Anthony Hu
f86b19dd30
Fix some typoes around Kyber and Dilithium
2025-01-31 10:13:39 -05:00
Hideki Miyazaki
6555da9448
revert TSIP_KEY_TYPE as TSIP TLS definition
2025-01-31 14:13:36 +09:00
David Garske
e7a0340eea
Merge pull request #8395 from SparkiDev/asm32_asm_older_opt
...
ARM32 ASM: optimize older platform alternatives
2025-01-30 15:47:25 -08:00
Colton Willey
cb0779f151
Add trusted cert to generation script and include.am
2025-01-30 15:29:59 -08:00
Sean Parkinson
3f47963802
Merge pull request #8396 from douzzer/20250129-CT-tweaks
...
20250129-CT-tweaks
2025-01-31 09:10:22 +10:00
JacobBarthelmeh
6181559d83
Merge pull request #8401 from douzzer/20250130-UHAVE_FFDHE_2048
...
20250130-UHAVE_FFDHE_2048
2025-01-30 15:55:25 -07:00
Colton Willey
a0950e97f5
Add tests for trusted certificate banner
2025-01-30 14:42:41 -08:00
Daniel Pouzzner
3a6b33c180
tests/api.c and wolfcrypt/benchmark/benchmark.c: fixes for building with HAVE_FFDHE_3072 and/or HAVE_FFDHE_4096 but without HAVE_FFDHE_2048.
2025-01-30 15:02:02 -06:00
Colton Willey
c4288cc334
Add support for parsing PEM certificates with begin trusted cert header/footer, needed for wolfProvider.
2025-01-30 11:34:02 -08:00
JacobBarthelmeh
eb7bac3cd0
Merge pull request #8399 from julek-wolfssl/cov-fixes-30-01-2025
...
Cov fixes
2025-01-30 11:56:36 -07:00
JacobBarthelmeh
9641dc79d9
Merge pull request #8398 from douzzer/20250130-ASCON-unit-test-fixes
...
20250130-ASCON-unit-test-fixes
2025-01-30 10:57:05 -07:00
Juliusz Sosinowicz
c36d23029f
dtls: malloc needs to allocate the size of the dereferenced object
2025-01-30 18:32:22 +01:00
Juliusz Sosinowicz
9a8bc248de
dtls: remove dead code
2025-01-30 18:32:22 +01:00
Juliusz Sosinowicz
3cd64581eb
dtls: better sanitize incoming messages in stateless handling
2025-01-30 18:32:22 +01:00
JacobBarthelmeh
f7b76002c2
Merge pull request #8397 from SparkiDev/kyber_no_malloc
...
ML-KEM/Kyber: build with no malloc
2025-01-30 10:06:13 -07:00
Juliusz Sosinowicz
e4b7a53191
api: make sure len doesn't overrun the input buffer
2025-01-30 18:01:51 +01:00
Juliusz Sosinowicz
2865b0c79b
api: check fd values as recv and send can't take in negative fd
2025-01-30 18:01:10 +01:00
Juliusz Sosinowicz
d91141fe05
api: pass in sizeof(tmp) instead of 1024 to attempt to satisfy Coverity
2025-01-30 18:00:32 +01:00
Juliusz Sosinowicz
2590aebfd9
dtls13: don't overrun hdr->epoch
2025-01-30 17:59:48 +01:00
Daniel Pouzzner
49d2beed1a
fixes for gating/tooling around ASCON.
2025-01-30 10:48:23 -06:00
Sean Parkinson
b62f5ab722
ML-KEM/Kyber: build with no malloc
...
ML-KEM/Kyber van now be built with WOLFSSL_NO_MALLOC and all data is on
the stack.
2025-01-30 18:11:55 +10:00
Daniel Pouzzner
0de38040f4
CT tweaks:
...
in wolfcrypt/src/coding.c, add ALIGN64 to hexDecode[], and add hexEncode[] for use by Base16_Encode();
in wolfcrypt/src/misc.c and wolfssl/wolfcrypt/misc.h:
move ctMask*() up so that min() and max() can use them, and add ctMaskWord32GTE();
add ALIGN64 to kHexChar[];
add CT implementation of CharIsWhiteSpace();
remove min_size_t() and max_size_t() recently added, but only one user (refactored).
2025-01-30 01:24:40 -06:00
Daniel Pouzzner
dd7ec129af
fixes for gating/tooling around ASCON.
2025-01-30 01:23:26 -06:00
Sean Parkinson
2d06e67a64
ARM32 ASM: optimize older platform alternatives
...
Make the alternative instructions for architectures less than 7 more
optimal.
2025-01-30 16:58:13 +10:00
Anthony Hu
25c8869541
Merge pull request #8390 from SparkiDev/lms_sha256_192_l1_h20
...
LMS: Fix SHA-256-192 level 1, height 20
2025-01-29 18:20:50 -05:00
Sean Parkinson
871c05e0e2
Merge pull request #8307 from julek-wolfssl/ascon
...
Initial ASCON hash256 and AEAD128 support based on NIST SP 800-232 ipd
2025-01-30 08:39:59 +10:00
Juliusz Sosinowicz
bcde4bdebb
ascon: move tests to api.c and introduce framework to split up api.c
2025-01-29 15:50:00 +01:00
Juliusz Sosinowicz
cd047a35f2
fixup! Initial ASCON hash256 and AEAD128 support based on NIST SP 800-232 ipd
2025-01-29 12:21:28 +01:00
Juliusz Sosinowicz
b0ab7f0d26
ascon: use individual word64 to help compiler
2025-01-29 11:49:09 +01:00
Juliusz Sosinowicz
78a7d12955
ascon: use lowercase first letters for members
2025-01-29 11:38:31 +01:00
Juliusz Sosinowicz
f47bbfc174
ascon: error out when word64 not available
2025-01-29 11:36:33 +01:00
Juliusz Sosinowicz
76e29be1a9
ascon: remove 6 round perm as its not used
2025-01-29 11:33:11 +01:00
Juliusz Sosinowicz
028b5b3cda
Fix references to match NIST draft
2025-01-29 11:31:34 +01:00
Juliusz Sosinowicz
3e65b927dd
fixup! ascon: added forced permutation unroll
2025-01-29 11:26:04 +01:00
Juliusz Sosinowicz
1018144ece
fixup! Initial ASCON hash256 and AEAD128 support based on NIST SP 800-232 ipd
2025-01-29 11:24:29 +01:00
Juliusz Sosinowicz
0e20cbe210
ascon: move implementation defines to source file
2025-01-29 11:10:44 +01:00
Juliusz Sosinowicz
ab5ce46bf3
ascon: move key to start of struct to avoid gaps in the struct
2025-01-29 11:08:16 +01:00
Juliusz Sosinowicz
ddcc189094
ascon: fix api naming Deinit -> Clear
2025-01-29 11:07:40 +01:00
Juliusz Sosinowicz
c5ad780798
Force experimental flag to enable ascon
2025-01-29 11:02:47 +01:00
Juliusz Sosinowicz
e4100d977c
ascon: added forced permutation unroll
2025-01-29 11:02:47 +01:00
Juliusz Sosinowicz
0e7bee9577
ascon-aead: add benchmarking
2025-01-29 11:02:47 +01:00
Juliusz Sosinowicz
0309c3a084
Add docs
2025-01-29 11:02:47 +01:00
Juliusz Sosinowicz
e3a612300b
Initial ASCON hash256 and AEAD128 support based on NIST SP 800-232 ipd
...
Implemented based on the NIST Initial Public Draft "NIST SP 800-232 ipd". Testing based on KAT's available at https://github.com/ascon/ascon-c . Added configuration for testing in github action.
2025-01-29 11:02:47 +01:00
Sean Parkinson
08a46f5431
LMS: Fix SHA-256-192 level 1, height 20
...
Fix parameters for SHA-256-192, Level 1, Height 20, Winternitz: 2, 4, 8
2025-01-29 08:50:43 +10:00
David Garske
45b385ade3
Merge pull request #8389 from douzzer/20250127-fix-disable-tls-config
...
20250127-fix-disable-tls-config
2025-01-28 09:09:08 -08:00
Daniel Pouzzner
2eb775d5c3
configure.ac: add enable_dtls_mtu, enable_dtlscid, and enable_dtls_frag_ch to features disabled when $ENABLED_TLS" = "no".
2025-01-28 09:46:39 -06:00
David Garske
d78338f485
Merge pull request #8387 from SparkiDev/code_gen_fixes_1
...
ASM, SP, C regeneration
2025-01-28 07:13:30 -08:00
Sean Parkinson
f8bc819fb5
ASM, SP, C regeneration
...
Fix spaces at start of copyright line in .asm files.
Changed generation of X25519 and Ed448 code to better match changes
already in C code. Fixed formatting in places.
2025-01-28 14:47:33 +10:00
JacobBarthelmeh
c48ba69063
Merge pull request #8377 from dgarske/cmake_win32
...
Fix for building wolfSSL with CMake on MINGW and MSYS
2025-01-27 16:34:36 -07:00
David Garske
c556e4305c
Merge pull request #8385 from JacobBarthelmeh/spelling
...
add macro CONFIG_WOLFTPM to list for zephyr use
2025-01-27 14:54:03 -08:00
JacobBarthelmeh
edd8355576
Merge pull request #8326 from gasbytes/patch-rng-health-test-heap-hint
...
Fix missing heap hint in RNG health test XMALLOC call
2025-01-27 13:49:53 -08:00
JacobBarthelmeh
f0fdc72774
Merge pull request #8384 from gojimmypi/pr-post-release-239b85c80-arduino
...
Correct Arduino comments spelling
2025-01-27 13:49:00 -08:00
JacobBarthelmeh
0f0b9ef401
add macro CONFIG_WOLFTPM to list for zephyr use
2025-01-27 14:47:20 -07:00
David Garske
570fec687a
Fix for building wolfSSL with CMake on MINGW and MSYS.
2025-01-27 10:43:56 -08:00
gojimmypi
6f90a473f0
Correct Arduino comments spelling
2025-01-27 10:26:11 -08:00
David Garske
127e7e9109
Merge pull request #8379 from douzzer/20250125-aarch64-armasm-AES-ECB-fix
...
20250125-aarch64-armasm-AES-ECB-fix
2025-01-27 10:07:36 -08:00
David Garske
8bf057c7e9
Merge pull request #8381 from gojimmypi/pr-post-release-239b85c80-arduino
...
Update Arduino comments for post-release publish
2025-01-27 08:31:41 -08:00
David Garske
6ed0a97fc4
Merge pull request #8382 from aidangarske/tpm_zephyr_support
...
Added neccesary macros when building wolfTPM Zephyr with wolfSSL
2025-01-27 08:01:57 -08:00
David Garske
e1534a3c8a
Merge pull request #8344 from SparkiDev/poly1305_arm32_neon
...
Poly1305 ARM32 NEON: add implementation
2025-01-27 07:52:50 -08:00
David Garske
ed390e472d
Merge pull request #8373 from julek-wolfssl/libimobiledevice-1.3.0
...
Changes for libimobiledevice 860ffb
2025-01-27 07:52:06 -08:00
David Garske
1721421d59
Merge pull request #8383 from julek-wolfssl/add-dtls-to-enable-all
...
Expand enable-all
2025-01-27 07:50:24 -08:00
Juliusz Sosinowicz
8ca59242a2
Expand enable-all
...
- Add dtls mtu to enable-all
- Add dtls 1.3 to enable-all
- Add dtls cid to enable-all
- Add dtls ch frag to enable-all
2025-01-27 13:38:00 +01:00
Juliusz Sosinowicz
89aba661fc
Changes for libimobiledevice 860ffb
2025-01-27 12:56:49 +01:00
aidan garske
146080edc4
zephyr fix for failing test tpm added necessary api's when using wolftpm
2025-01-26 13:44:51 -08:00
gojimmypi
691fc2e71f
Update Arduino comments for post-release publish
2025-01-26 10:49:31 -08:00
Daniel Pouzzner
34dddf0d11
wolfcrypt/src/aes.c: in _AesEcbEncrypt() and _AesEcbDecrypt(), implement missing iteration for AES_encrypt_AARCH64() and AES_decrypt_AARCH64().
2025-01-25 16:23:41 -06:00
David Garske
337932806d
Merge pull request #8378 from douzzer/20250125-fips204-fixes
...
20250125-fips204-fixes
2025-01-25 08:48:14 -08:00
Daniel Pouzzner
b41d46a158
src/ssl.c and src/ssl_load.c: fix syntax flubs in WOLFSSL_DILITHIUM_FIPS204_DRAFT paths.
2025-01-25 10:11:25 -06:00
David Garske
0932891b5b
Merge pull request #8370 from douzzer/20250120-lean-fips
...
20250120-lean-fips
2025-01-24 19:13:21 -08:00
Daniel Pouzzner
f7abd7cb25
opensslcoexist fixes: add WOLFSSL_EVP_MD_FLAG_XOF, and use WC_MD4_BLOCK_SIZE, not MD4_BLOCK_SIZE.
2025-01-24 20:14:39 -06:00
Daniel Pouzzner
e6b87c2e54
src/ssl.c: work around false positive from scan-build in wolfSSL_writev(), long ago annotated with PRAGMA_GCC("GCC diagnostic ignored \"-Wmaybe-uninitialized\"").
...
wolfcrypt/src/misc.c: fix typo, max_size_t_() -> max_size_t().
2025-01-24 17:55:55 -06:00
Daniel Pouzzner
91aad90c59
wolfssl/internal.h and src/internal.c:
...
change Buffers.prevSent and .plainSz from int to word32;
change SendData() sz arg from int sz to size_t sz;
add asserts in SendData() and ReceiveData() to prevent sz > INT_MAX (assuring no overflow internally or in the returned int).
wolfssl/ssl.h and src/ssl.c:
change WOLFSSL_BUFFER_INFO.length from unsigned int to word32 (no functional change, just for consistency);
add wolfSSL_write_internal(), refactor wolfSSL_write() to call it, and fix wolfSSL_write_ex() to take size_t sz, not int sz.
2025-01-24 17:16:08 -06:00
Daniel Pouzzner
1b338abb2d
fix wolfSSL_read_ex() prototype with size_t sz, not int sz, for consistency with OpenSSL;
...
fix internal functions wolfSSL_read_internal() and ReceiveData() to likewise accept size_t sz;
add negative sz checks where needed to other functions that call wolfSSL_read_internal() and ReceiveData();
add min_size_t() and max_size_t() to misc.c/misc.h.
2025-01-24 16:16:43 -06:00
Daniel Pouzzner
93ac482772
linuxkm/module_hooks.c: in wolfssl_init(), #ifdef HAVE_FIPS, wc_RunAllCast_fips();
...
wolfcrypt/src/aes.c: add missing parens in GHASH_ONE_BLOCK_SW() to mollify clang-tidy;
wolfssl/wolfcrypt/fips_test.h: add FIPS_CAST_AES_ECB;
wolfssl/wolfcrypt/settings.h: #ifdef WOLFSSL_LINUXKM, #undef HAVE_LIMITS_H.
2025-01-24 16:09:43 -06:00
Daniel Pouzzner
09ac8c69db
fixes for clang-tidy complaints with NO_ERROR_STRINGS.
2025-01-24 16:09:43 -06:00
Daniel Pouzzner
0ec17dfed5
wolfssl/wolfcrypt/types.h: tweak for buildability in no-PK FIPS, re limits.h.
2025-01-24 16:09:43 -06:00
Daniel Pouzzner
bd014e02e0
configure.ac: tweaks for clarity
2025-01-24 16:09:43 -06:00
Daniel Pouzzner
ca9228467a
Merge pull request #8376 from dgarske/quic_test
...
Fix for QUIC test `test_provide_quic_data`
2025-01-24 16:09:29 -06:00
David Garske
5d43e74167
Fix for QUIC test introduced in PR #8358 .
2025-01-24 12:45:34 -08:00
David Garske
8ab85a2df7
Merge pull request #8375 from kareem-wolfssl/zd19270
...
Fix warning about ESP_IDF_VERSION_MAJOR not being defined when defining FREERTOS.
2025-01-24 12:16:34 -08:00
David Garske
20ae10fd8c
Merge pull request #8360 from philljj/dual_alg_mldsa
...
Update ssl code for ML_DSA.
2025-01-24 11:55:04 -08:00
David Garske
ba88a6454c
Merge pull request #8331 from julek-wolfssl/bind-9.18.28
...
Bind 9.18.28 fixes
2025-01-24 11:37:26 -08:00
David Garske
2e87dfc207
Merge pull request #8345 from JacobBarthelmeh/python_update
...
Python update to 3.12.6
2025-01-24 11:37:10 -08:00
David Garske
7ad4131b13
Merge pull request #8343 from anhu/maxq_pkcs11
...
New additions for MAXQ with wolfPKCS11
2025-01-24 11:34:27 -08:00
Kareem
eb64ea1fa7
Fix warning about ESP_IDF_VERSION_MAJOR not being defined when defining FREERTOS.
2025-01-24 12:01:25 -07:00
Anthony Hu
18396c4740
New additions for MAXQ with wolfPKCS11
...
- Support using MAXQ for:
- AES-ECB
- AES-CCM
- AES-CBC
- ECC Key Generation and ECDH
- in wc_ecc_import_private_key_ex():
- check to make sure devId is not invalid before calling wc_MAXQ10XX_EccSetKey().
- This is because the raspberry pi sometimes need to sign stuff.
- in aes_set_key() and ecc_set_key():
- delete a key in case it already exists; ignore error since it might not exist.
- unlock, lock the HW mutex around ECDSA_sign() because it needs access to rng
- in wolfSSL_MAXQ10XX_CryptoDevCb:
- allow maxq1065 to call the crypto callback.
- do not set the key during signing; use pre provisioned one instead (DEVICE_KEY_PAIR_OBJ_ID)
2025-01-24 13:53:27 -05:00
JacobBarthelmeh
69be9aa211
fix to not stomp on sz with XOF function, restore comment, remove early XFREE call
2025-01-24 11:40:53 -07:00
Juliusz Sosinowicz
829c2a022f
Free'ing ctx->srp has to be reference counted as well
2025-01-24 18:39:11 +01:00
JacobBarthelmeh
8eb6b5a3e4
clang tidy unused parameter warning
2025-01-24 00:34:41 -07:00
JacobBarthelmeh
2526d91300
formating for line length and guard on access to EncryptedInfo struct
2025-01-23 23:56:28 -07:00
JacobBarthelmeh
52975150d4
add macro guard for shak128 to test case
2025-01-23 23:14:50 -07:00
JacobBarthelmeh
d2d664b4cc
adjust test cases for different builds
2025-01-23 23:02:34 -07:00
Sean Parkinson
ecacbae3a0
Poly1305 ARM32 NEON: add implementation
...
Add assembly for Poly1305 using ARM32 NEON instruction set.
For Poly1305 ARM32 Base:
Change name from poly1305_blocks_arm32_16 to poly1305_arm32_blocks_16
poly1305.c:
ARM32 NEON - buffer up to 4 blocks
x86_64 - only calculate powers of r once after key is set.
test.c: poly1305 testing with multiple updates.
benchmark: chacha20-poly1305 now uses AAD
2025-01-24 13:28:46 +10:00
JacobBarthelmeh
9b04a4f8d1
account for correct return value of cipher stack push and clSuite use case after rebase
2025-01-23 17:47:24 -07:00
David Garske
f1e06e1f6a
Merge pull request #8371 from lealem47/fix-norealloc-crash
...
Fix for WOLFSSL_NO_REALLOC build crash
2025-01-23 16:08:34 -08:00
JacobBarthelmeh
41e00dc3c9
handle edge case with wolfSSL_write_ex and refactor wolfSSL_get_client_ciphers
2025-01-23 16:30:08 -07:00
JacobBarthelmeh
1e3d3ddec7
remove attempting to load a CRL with wolfSSL_CTX_load_verify_locations_ex
2025-01-23 16:30:08 -07:00
JacobBarthelmeh
8ca979f892
refactor clSuites internal use, and check return values with setting PARAMS
2025-01-23 16:30:08 -07:00
JacobBarthelmeh
86ed94f2e3
change return of stub functions to be failure, pass PEM password cb and user data along
2025-01-23 16:30:08 -07:00
JacobBarthelmeh
2eb42f1cea
adjust behavior when calling non XOF digest final function with XOF digest type
2025-01-23 16:30:08 -07:00
JacobBarthelmeh
286b9b672b
increase test coverage
2025-01-23 16:30:08 -07:00
JacobBarthelmeh
fc563f2e20
cast data input to const and resolve overlong line length
2025-01-23 16:30:08 -07:00
JacobBarthelmeh
da7543f65b
fix for macro guard with QT build
2025-01-23 16:30:08 -07:00
JacobBarthelmeh
661f6b04a2
fix for macro guard on free of clSuites
2025-01-23 16:30:08 -07:00
JacobBarthelmeh
2812baf5a9
fix for memory leak with new wolfSSL_get_client_ciphers function
2025-01-23 16:30:08 -07:00
JacobBarthelmeh
49c515ac58
add some unit test cases
2025-01-23 16:30:08 -07:00
JacobBarthelmeh
418e63e448
fix for smallstack build
2025-01-23 16:30:08 -07:00
JacobBarthelmeh
a9efd7358a
resolve memory leak on error
2025-01-23 16:30:08 -07:00
JacobBarthelmeh
363ecd3756
add macro guards to account for alternate builds
2025-01-23 16:30:07 -07:00
JacobBarthelmeh
28bed8d634
fix for SN (short name) of digests to match expected values
2025-01-23 16:30:07 -07:00
JacobBarthelmeh
c6974a921d
fix for return values of write_ex/read_ex, propogate PARAMS, handle CRL with load_verify_locations, fix for get verified/unverified chain
2025-01-23 16:30:07 -07:00
JacobBarthelmeh
689c61cc7e
adding implementation of wolfSSL_get_client_ciphers
2025-01-23 16:30:07 -07:00
JacobBarthelmeh
d8a9aaad16
add key mismatch error
2025-01-23 16:30:07 -07:00
JacobBarthelmeh
7d374a2ca5
fix SSL_write_ex return value and build with extra trace debug
2025-01-23 16:30:07 -07:00
JacobBarthelmeh
3b23a05157
flush out x509 object stack deep copy and md get flag
2025-01-23 16:30:07 -07:00
JacobBarthelmeh
f9e289881b
stub out all functions needed for Python port update
2025-01-23 16:30:07 -07:00
JacobBarthelmeh
0ebb5f7238
add short name WC_SN macros
2025-01-23 16:30:07 -07:00
Lealem Amedie
eda98712d5
Fix for NO_REALLOC build crash
2025-01-23 16:14:45 -07:00
David Garske
fee2364e04
Merge pull request #8369 from lealem47/zd18687
...
Fix OPENSSL_ALL build with WOLFSSL_NO_REALLOC
2025-01-23 14:29:34 -08:00
Lealem Amedie
161da6046c
Skip MQX InitMutex call if FIPS module is in Init Mode
2025-01-23 14:00:00 -07:00
Lealem Amedie
49a74daebc
Fix OPENSSL_ALL build with WOLFSSL_NO_REALLOC
2025-01-23 13:59:30 -07:00
jordan
2ef90b1f89
ML-DSA/Dilithium: update ssl code for ML_DSA final.
2025-01-23 15:33:26 -05:00
Kaleb Himes
dd2c5b1a4c
Merge pull request #8368 from douzzer/20250122-enable-fips-requires-arg
...
20250122-enable-fips-requires-arg
2025-01-22 12:49:11 -07:00
Daniel Pouzzner
bcdfc5791c
wolfssl/ssl.h: fix speling erorr (thanks codespell).
2025-01-22 12:49:36 -06:00
Daniel Pouzzner
6102dafa48
configure.ac: require explicit arg for --enable-fips.
2025-01-22 12:48:52 -06:00
David Garske
1729d03123
Merge pull request #8338 from julek-wolfssl/openldap-2.6.7
...
Add openldap 2.6.7 testing
2025-01-22 07:20:51 -08:00
David Garske
f61d276f3b
Merge pull request #8362 from JacobBarthelmeh/copyright
...
update copyright date to 2025
2025-01-21 16:23:49 -08:00
David Garske
a7fcf419a7
Merge pull request #8366 from JacobBarthelmeh/spelling
...
misc. spelling fixes
2025-01-21 15:38:13 -08:00
David Garske
efb8a221d6
Merge pull request #8365 from anhu/retcode_comm
...
Add some comments to explain return codes.
2025-01-21 15:37:50 -08:00
JacobBarthelmeh
d94c043b09
misc. spelling fixes
2025-01-21 16:18:28 -07:00
Anthony Hu
d7a2be62a3
Add some comments to explain return codes.
2025-01-21 18:00:47 -05:00
David Garske
c456cbdfbc
Merge pull request #8351 from anhu/lms_guards_256256
...
Better guarding for LMS SHA256_256 vs LMS SHA256_192
2025-01-21 10:56:13 -08:00
David Garske
5df6989eab
Merge pull request #8350 from embhorn/zd19220
...
Check r and s len before copying
2025-01-21 10:36:54 -08:00
JacobBarthelmeh
a4c58614b9
Merge pull request #8324 from julek-wolfssl/ntp-4.2.8p17
...
ntp 4.2.8p17 additions
2025-01-21 10:02:23 -08:00
JacobBarthelmeh
78ffa54d60
fix rewrite issue from license script
2025-01-21 10:03:33 -07:00
JacobBarthelmeh
2c24291ed5
update copyright date
2025-01-21 09:55:03 -07:00
David Garske
0c883391f5
Merge pull request #8327 from julek-wolfssl/libssh2
...
update libssh2 version to pass tests
2025-01-21 08:27:50 -08:00
David Garske
eb261836a7
Merge pull request #8358 from julek-wolfssl/gh/8156-2
...
quic_record_append: return correct code
2025-01-21 08:22:15 -08:00
David Garske
e5f880a119
Merge pull request #8361 from redbaron/patch-1
...
Link to advapi32 on Windows
2025-01-20 16:30:55 -08:00
David Garske
d6912a8451
Merge pull request #8332 from mgrojo/feature/ada-psk
...
Ada binding: add support for PSK client callback
2025-01-20 10:31:04 -08:00
David Garske
98198335e6
Merge pull request #8357 from SparkiDev/entropy_memuse_apple_timer
...
Entropy Apple: change time function called
2025-01-20 07:58:14 -08:00
Eric Blankenhorn
9c4ef7cd30
Use BUFFER_E instead of ASN_PARSE_E when buffer is too small
2025-01-20 08:40:36 -06:00
Maxim Ivanov
aa46cd2ff3
Link to advapi32 on Windows
...
`rand.c` on Windows uses old CryptoAPI functions like CryptAcquireContext , which are present in advapi32, but it wasn't linked explicitly.
2025-01-20 12:07:02 +00:00
Juliusz Sosinowicz
88c6349837
quic_record_append: return correct code
...
0-return from quic_record_append is an error. `quic_record_complete(qr) || len == 0` is not an error condition. We should return as normal on success.
The issue is that passing in buffers with length 1 then 3 causes `qr_length` (in `quic_record_make`) to return 0. Then when `quic_record_append` gets called the `len` gets consumed by the first `if` and `len == 0` is true. This causes the error return which is not correct behaviour.
Reported in https://github.com/wolfSSL/wolfssl/issues/8156 . Reproducing is a bit tricky. I couldn't get the docker to work.
First setup ngtcp2 as described in https://github.com/ngtcp2/ngtcp2/pkgs/container/ngtcp2-interop . The Relevant steps are (I tested with master/main branches of all libs):
```
$ git clone --depth 1 -b v5.7.4-stable https://github.com/wolfSSL/wolfssl
$ cd wolfssl
$ autoreconf -i
$ # For wolfSSL < v5.6.6, append --enable-quic.
$ ./configure --prefix=$PWD/build \
--enable-all --enable-aesni --enable-harden --enable-keylog-export \
--disable-ech
$ make -j$(nproc)
$ make install
$ cd ..
$ git clone --recursive https://github.com/ngtcp2/nghttp3
$ cd nghttp3
$ autoreconf -i
$ ./configure --prefix=$PWD/build --enable-lib-only
$ make -j$(nproc) check
$ make install
$ cd ..
$ git clone --recursive https://github.com/ngtcp2/ngtcp2
$ cd ngtcp2
$ autoreconf -i
$ # For Mac users who have installed libev with MacPorts, append
$ # LIBEV_CFLAGS="-I/opt/local/include" LIBEV_LIBS="-L/opt/local/lib -lev"
$ ./configure PKG_CONFIG_PATH=$PWD/../wolfssl/build/lib/pkgconfig:$PWD/../nghttp3/build/lib/pkgconfig \
--with-wolfssl
$ make -j$(nproc) check
```
Download and unzip https://github.com/user-attachments/files/17621329/failing.pcap.zip
From the ngtcp2 dir:
```
./examples/wsslserver 127.0.0.1 44433 /path/to/wolfssl/certs/server-key.pem /path/to/wolfssl/certs/server-cert.pem
```
Then run the following python script (`failing.pcap` has to be available in the running dir) (probably needs to be run as `sudo`):
```
from scapy.utils import rdpcap, PcapNgReader
from scapy.all import *
reader = PcapNgReader("failing.pcap")
for i in reader:
p = i[IP]
p.dport = 44433
p.dst = "127.0.0.1"
p[UDP].chksum=0
p.display()
send(p)
```
Then observe the log line:
```
I00000000 0xa48accb7b49ec1556ac7111c64d3a4572a81 frm tx 625216795 Initial CONNECTION_CLOSE(0x1c) error_code=CRYPTO_ERROR(0x100) frame_type=0 reason_len=0 reason=[]
```
You can also use `gdb` and place a break inside the following section in `wolfssl/src/quic.c`.
```
if (quic_record_complete(qr) || len == 0) {
return 0;
}
```
2025-01-16 11:39:57 -08:00
Sean Parkinson
6e383547dd
Entropy Apple: change time function called
...
Use clock_gettime_nsec_np and get the raw monotonic counter.
2025-01-16 04:14:55 +10:00
Sean Parkinson
e76186f060
Merge pull request #8356 from kareem-wolfssl/gh8355
...
Properly check for signature_algorithms from the client in a TLS 1.3 server.
2025-01-15 05:54:01 +10:00
Kareem
9f5c89ab4b
Properly check for signature_algorithms from the client in a TLS 1.3 server.
...
The server was checking ssl->extensions which will always have an entry for TLSX_SIGNATURE_ALGORITHMS
as it is unconditionally added by TLSX_PopulateExtensions earlier in the DoTls13ClientHello function.
Instead, check args->clSuites->hashSigAlgoSz which is only set if signature_algorithms is found and parsed by TLSX_Parse.
2025-01-13 16:22:28 -07:00
JacobBarthelmeh
e037e0875d
Merge pull request #8352 from douzzer/20240110-revert-8340
...
20240110-revert-8340
2025-01-10 17:31:34 -07:00
Daniel Pouzzner
d4c654205b
Revert "quic_record_append: return correct code"
...
This reverts commit bc12dad041 .
This commit broke builds that combine QUIC and PQ -- known failures are pq-all-valgrind-unittest, pq-hybrid-all-rpk, pq-hybrid-all-rpk-valgrind-unittest, quantum-safe-wolfssl-all-gcc-latest, quantum-safe-wolfssl-all-g++-latest, quantum-safe-wolfssl-all-fortify-source-asm, quantum-safe-wolfssl-all-fortify-source-asm-noasm, and quantum-safe-wolfssl-all-intelasm-sp-asm-valgrind.
Note that the unit.test asserts added by this commit fail both before and after reversion.
2025-01-10 17:38:02 -06:00
JacobBarthelmeh
99a6e82ff8
Merge pull request #8349 from douzzer/20250109-memory-errors
...
20250109-memory-errors
2025-01-10 15:58:30 -07:00
Eric Blankenhorn
462aa5bec6
Exclude new test for FIPS
2025-01-10 16:47:13 -06:00
Anthony Hu
4ca65f0ce7
Better guarding for LMS SHA256_256 vs LMS SHA256_192
2025-01-10 17:24:05 -05:00
Daniel Pouzzner
dc2ada117e
wolfcrypt/benchmark/benchmark.c: fix check_for_excessive_stime() to accept the algo and strength, for proper rendering on asym algs.
2025-01-10 15:48:24 -06:00
Daniel Pouzzner
b16bedf82a
more fixes guided by clang-tidy heap analyzer using clang-20.0.0_pre20250104:
...
wolfcrypt/src/integer.c: add additional guards against OOB access from uint wraps and null derefs of mp_int.dp, and refactor mp_grow() and mp_init_size() to use XMEMSET, for the benefit of clang-tidy. in mp_grow(), fix the condition for the realloc to assure always evaluated if a->alloc == 0.
wolfcrypt/src/asn.c: fix wc_CreatePKCS8Key() so that *outSz is always assigned when LENGTH_ONLY_E is returned.
wolfcrypt/src/pkcs7.c: remove redundant inner condition in wc_PKCS7_EncodeAuthEnvelopedData(), added in previous commit and caught on review by Jacob (thanks!).
wolfcrypt/src/sp_int.c: in sp_mont_norm(), add another suppression for the same false positive in sp_mul() suppressed in previous commit.
wolfcrypt/src/srp.c: refactor SrpHashSize() to return ALGO_ID_E rather than 0 when unknown/uncompiled alg is requested.
2025-01-10 15:48:05 -06:00
Daniel Pouzzner
7cd2fd3617
numerous fixes for memory errors reported by clang-tidy, most of them true positives, unmasked by CPPFLAGS=-DNO_WOLFSSL_MEMORY: clang-analyzer-unix.Malloc, clang-analyzer-core.NullDereference, clang-analyzer-core.uninitialized.Assign, clang-analyzer-core.UndefinedBinaryOperatorResult, and clang-analyzer-optin.portability.UnixAPI (re malloc(0)).
...
several fixes for defects reported by cppcheck:
wolfcrypt/src/ecc.c: fix for cppcheck oppositeInnerCondition from cppcheck-2.16.0 in _ecc_make_key_ex(), and fixes for related unhandled errors discovered by manual inspection;
wolfcrypt/test/test.c: fix XREALLOC call in memcb_test() to resolve cppcheck-detected memleak.
2025-01-10 14:30:42 -06:00
JacobBarthelmeh
21bdb76ede
Merge pull request #8340 from julek-wolfssl/gh/8156
...
quic_record_append: return correct code
2025-01-10 12:08:27 -07:00
Reda Chouk
d491e54c98
Fix heap hint usage in wc_RNG_HealthTest
...
Pass provided heap hint to XMALLOC instead of NULL in RNG health test
function to ensure proper memory allocation with custom heap.
2025-01-10 19:13:53 +01:00
JacobBarthelmeh
0e3020b99b
Merge pull request #8337 from julek-wolfssl/libvncserver-0.9.14
...
Add 0.9.14 to tested libvncserver builds
2025-01-10 10:58:12 -07:00
JacobBarthelmeh
c977d627ed
Merge pull request #8303 from night1rider/ZD-19038
...
Extended Master Secret Generation PK Callback
2025-01-10 10:53:26 -07:00
JacobBarthelmeh
dc6669b772
Merge pull request #8321 from julek-wolfssl/fips-check-update-help
...
fips-check.sh: Update the help output
2025-01-10 10:48:14 -07:00
Eric Blankenhorn
53831d0f32
Add test
2025-01-10 10:06:14 -06:00
David Garske
197a7e0ba3
Merge pull request #8348 from SparkiDev/aarch64_cpuid_freebsd_fix
...
Aarch64 CPU Id: FreeBSD/OpenBSD fix
2025-01-10 06:59:01 -08:00
Eric Blankenhorn
139504b9fd
Check r and s len before copying
2025-01-10 08:46:40 -06:00
Sean Parkinson
aa8a2144c8
Aarch64 CPU Id: FreeBSD/OpenBSD fix
...
Fix name and flags set.
2025-01-10 08:28:45 +10:00
David Garske
5b07d41cb3
Merge pull request #8342 from douzzer/20250108-reproducible-build-backtrace
...
20250108-reproducible-build-backtrace
2025-01-08 15:23:14 -08:00
mgrojo
8122181e45
Ada binding: add support for the PSK server callbacks
...
Plus fix location of the certificate files in the examples.
Tested with both Ada examples:
```
obj/tls_server_main --psk
obj/tls_client_main 127.0.0.1 --psk
```
2025-01-09 00:11:01 +01:00
Daniel Pouzzner
ad5018ee5d
configure.ac: fix --enable-debug-trace-errcodes=backtrace with --enable-reproducible-build: don't add -g0 to CFLAGS when both are enabled, because -g0 makes backtracing impossible.
2025-01-08 15:59:11 -06:00
David Garske
5f95fe3730
Merge pull request #8341 from douzzer/20250108-PKCS12_CoalesceOctetStrings-leak
...
20250108-PKCS12_CoalesceOctetStrings-leak
2025-01-08 12:29:30 -08:00
Daniel Pouzzner
8d85ab964d
wolfcrypt/src/pkcs12.c: fix resource leak in PKCS12_CoalesceOctetStrings().
2025-01-08 13:39:33 -06:00
David Garske
78776ba6b3
Merge pull request #8339 from douzzer/20250107-clang-tidy-xmss
...
20250107-clang-tidy-xmss
2025-01-08 10:16:15 -08:00
Juliusz Sosinowicz
bc12dad041
quic_record_append: return correct code
...
0-return from quic_record_append is an error. `quic_record_complete(qr) || len == 0` is not an error condition. We should return as normal on success.
The issue is that passing in buffers with length 1 then 3 causes `qr_length` (in `quic_record_make`) to return 0. Then when `quic_record_append` gets called the `len` gets consumed by the first `if` and `len == 0` is true. This causes the error return which is not correct behaviour.
Reported in https://github.com/wolfSSL/wolfssl/issues/8156 . Reproducing is a bit tricky. I couldn't get the docker to work.
First setup ngtcp2 as described in https://github.com/ngtcp2/ngtcp2/pkgs/container/ngtcp2-interop . The Relevant steps are (I tested with master/main branches of all libs):
```
$ git clone --depth 1 -b v5.7.4-stable https://github.com/wolfSSL/wolfssl
$ cd wolfssl
$ autoreconf -i
$ # For wolfSSL < v5.6.6, append --enable-quic.
$ ./configure --prefix=$PWD/build \
--enable-all --enable-aesni --enable-harden --enable-keylog-export \
--disable-ech
$ make -j$(nproc)
$ make install
$ cd ..
$ git clone --recursive https://github.com/ngtcp2/nghttp3
$ cd nghttp3
$ autoreconf -i
$ ./configure --prefix=$PWD/build --enable-lib-only
$ make -j$(nproc) check
$ make install
$ cd ..
$ git clone --recursive https://github.com/ngtcp2/ngtcp2
$ cd ngtcp2
$ autoreconf -i
$ # For Mac users who have installed libev with MacPorts, append
$ # LIBEV_CFLAGS="-I/opt/local/include" LIBEV_LIBS="-L/opt/local/lib -lev"
$ ./configure PKG_CONFIG_PATH=$PWD/../wolfssl/build/lib/pkgconfig:$PWD/../nghttp3/build/lib/pkgconfig \
--with-wolfssl
$ make -j$(nproc) check
```
Download and unzip https://github.com/user-attachments/files/17621329/failing.pcap.zip
From the ngtcp2 dir:
```
./examples/wsslserver 127.0.0.1 44433 /path/to/wolfssl/certs/server-key.pem /path/to/wolfssl/certs/server-cert.pem
```
Then run the following python script (`failing.pcap` has to be available in the running dir) (probably needs to be run as `sudo`):
```
from scapy.utils import rdpcap, PcapNgReader
from scapy.all import *
reader = PcapNgReader("failing.pcap")
for i in reader:
p = i[IP]
p.dport = 44433
p.dst = "127.0.0.1"
p[UDP].chksum=0
p.display()
send(p)
```
Then observe the log line:
```
I00000000 0xa48accb7b49ec1556ac7111c64d3a4572a81 frm tx 625216795 Initial CONNECTION_CLOSE(0x1c) error_code=CRYPTO_ERROR(0x100) frame_type=0 reason_len=0 reason=[]
```
You can also use `gdb` and place a break inside the following section in `wolfssl/src/quic.c`.
```
if (quic_record_complete(qr) || len == 0) {
return 0;
}
```
2025-01-08 18:53:43 +01:00
Daniel Pouzzner
fd664fd597
wolfcrypt/src/integer.c: add sanity checks to mollify clang-tidy 20.0.0_pre20250104: in mp_grow(), error if the mp_int has a null .dp but nonzero .alloc; in s_mp_add() and s_mp_sub(), error if either operand has a null .dp but the constant of iteration (from .used) is positive. these fix 6 distinct clang-analyzer-core.NullDereferences, of undetermined accuracy (possibly benign).
2025-01-08 11:09:27 -06:00
Daniel Pouzzner
632d1c7ada
wolfcrypt/src/wc_xmss_impl.c: fix error-checking comparisons in wc_xmss_bds_state_load() and wc_xmss_bds_state_store(), and remove no-longer-needed suppression in wc_xmss_sign().
...
.wolfssl_known_macro_extras: remove unneeded WOLFSSL_GAISLER_BCC and WOLFSSL_NO_AES_CFB_1_8.
wolfcrypt/src/dh.c: reformat overlong lines.
2025-01-07 17:37:11 -06:00
Daniel Pouzzner
27c37b245f
tests/api.c: in test_dtls12_basic_connection_id(), add cast to fix a -Wformat on size_t j when building -m32.
2025-01-07 16:51:30 -06:00
mgrojo
815f99d0c2
Ada binding: improve comments and arguments in the PSK case
...
- Add comments for the PSK value in the example.
- Add runtime argument for executing the PSK test.
- Warn user that their callback implementation can't be in the SPARK subset.
2025-01-07 23:12:14 +01:00
Daniel Pouzzner
b6ce89c429
wolfcrypt/src/pkcs7.c: in wc_PKCS7_BuildSignedAttributes(), clear cannedAttribs[idx] before it's conditionally populated, to prevent possible uninited data read in subsequent EncodeAttributes().
2025-01-07 15:03:18 -06:00
Daniel Pouzzner
8c32238733
wolfcrypt/src/wc_xmss_impl.c: guided by clang-tidy 20.0.0_pre20250104, add some error-checking to wc_xmss_bds_state_load() and wc_xmss_bds_state_store(), but ultimately, suppress a pair of stubborn apparently-false "function call argument is an uninitialized value" warnings, one in wc_xmss_bds_state_store() and one in wc_xmss_sign().
2025-01-07 14:04:01 -06:00
Daniel Pouzzner
78c4a04cac
Merge pull request #8330 from dgarske/compat
...
Fix for SSL_set_mtu compat function return code
2025-01-07 10:52:59 -06:00
David Garske
a3d879f1c6
Merge pull request #8336 from douzzer/20250107-clang-tidy-null-derefs
...
20250107-clang-tidy-null-derefs
2025-01-07 08:07:06 -08:00
David Garske
4a12351a82
Merge pull request #8335 from douzzer/20250106-_DhSetKey-FFDHE-short-circuit
...
20250106-_DhSetKey-FFDHE-short-circuit
2025-01-07 08:06:37 -08:00
David Garske
d2ea3c67c5
Merge pull request #8329 from douzzer/20250103-Sha512Final-no-scratch-digest
...
20250103-Sha512Final-no-scratch-digest
2025-01-07 08:05:31 -08:00
Juliusz Sosinowicz
d704dda47b
Add openldap 2.6.7 testing
2025-01-07 13:01:56 +01:00
Juliusz Sosinowicz
cb4d161668
Add 0.9.14 to tested libvncserver builds
2025-01-07 11:45:43 +01:00
Juliusz Sosinowicz
40500e4f2b
fixup! Implement wolfSSL_X509_STORE_set_default_paths
2025-01-07 10:56:34 +01:00
Daniel Pouzzner
d6ead1b3e5
src/tls.c: fix possible null deref in TLSX_UseCertificateStatusRequestV2().
...
wolfcrypt/src/pkcs12.c: fix possible null deref in PKCS12_CoalesceOctetStrings(), and fix spelling of PKCS12_ConcatenateContent().
2025-01-07 00:00:48 -06:00
Daniel Pouzzner
fffafe661a
wolfcrypt/src/dh.c: in _DhSetKey(), add short-circuit comparisons to RFC 7919 known-good moduli, preempting overhead from mp_prime_is_prime().
...
wolfcrypt/test/test.c: in dh_ffdhe_test(), when defined(HAVE_PUBLIC_FFDHE), use wc_DhSetKey_ex() rather than wc_DhSetKey() to exercise the primality check in _DhSetKey().
2025-01-06 14:52:42 -06:00
David Garske
1679218a88
Merge pull request #8333 from SparkiDev/sp_int_rshb_codesonar
...
SP int: stop CodeSonar complaining about i being negatve
2025-01-06 11:44:32 -08:00
Daniel Pouzzner
5172ff7ee3
wolfcrypt/src/sha512.c: in Sha512FinalRaw() and wc_Sha384FinalRaw(), refactor out the scratch digest -- ByteReverseWords64() is safe in-place, and the scratch digest caused a SEGV in the XMEMCPY() on AVX512-capable targets built with gcc -march=native unless XALIGN(64), due to gcc bug(s).
2025-01-06 11:06:56 -06:00
Sean Parkinson
13ce92cc1f
SP int: stop CodeSonar complaining about i being negatve
...
n is checked for negative and fail out in that case.
i is n devided by a positive constant and can never be negative.
2025-01-06 10:04:14 +10:00
mgrojo
11a40a610e
Ada binding: add support for PSK client callback
...
Tested with:
`wolfSSL/wolfssl-examples/psk/server-psk.c`
after changing `DTLSv1_3_Client_Method` to `DTLSv1_2_Client_Method` to comply with the server example.
2025-01-04 20:03:04 +01:00
Juliusz Sosinowicz
341ed32223
Add bind9 CI testing
2025-01-03 20:47:51 +01:00
David Garske
d6440be4a9
Fix for SSL_set_mtu -> wolfSSL_set_mtu_compat return code. Update comment for wolfSSL_is_init_finished indicating it works for TLS and DTLS.
2025-01-03 10:10:37 -08:00
Juliusz Sosinowicz
02e942334b
Define WOLFSSL_MAX_SSL_SESSION_ID_LENGTH
2025-01-03 17:09:47 +01:00
Juliusz Sosinowicz
4cc3eec587
Implement wolfSSL_X509_STORE_set_default_paths
2025-01-03 17:09:30 +01:00
Juliusz Sosinowicz
5ee8af2351
wolfSSL_i2o_ECPublicKey: use uncompressed when selected
2025-01-03 14:24:34 +01:00
David Garske
71b7d0c9de
Merge pull request #8328 from douzzer/20250102-fips-v6-update-to-5v7v6
...
20250102-fips-v6-update-to-5v7v6
2025-01-02 16:01:05 -08:00
David Garske
5a6e92c793
Merge pull request #8325 from SparkiDev/aarch64_cpuid_aesgcm_kyber
...
Aarch64 ASM: Use CPU features for more
2025-01-02 14:51:35 -08:00
kaleb-himes
bb482d1881
Order into respective groups
2025-01-02 15:41:47 -07:00
Daniel Pouzzner
7d856aebd0
update FIPS v6 to point to wolfcrypt WCv6.0.0-RC3 (aka v5.7.6-stable) and fips WCv6.0.0-RC3.
2025-01-02 15:42:19 -06:00
Juliusz Sosinowicz
853c108802
update libssh2 version to pass tests
2025-01-02 17:00:57 +01:00
Juliusz Sosinowicz
353986bbf6
fips-check.sh: Update the help output
2025-01-02 12:43:43 +01:00
Sean Parkinson
7d3ee74a71
Aarch64 ASM: Use CPU features for more
...
AES GCM streaming - fix GHASH_ONE_BLOCK to use CPU feature information.
AES-GCM uses EOR3 (SHA-3 instruction) - split assembly code.
Kyber uses SQRDMLSH - split assembly code.
Changed define from WOLFSSL_AARCH64_NO_SQRMLSH to
WOLFSSL_AARCH64_NO_SQRDMLSH to match instruction.
Improved array data format for inline assembly code.
2025-01-02 19:56:04 +10:00
Daniel Pouzzner
239b85c804
Merge pull request #8323 from JacobBarthelmeh/release
...
prepare for release 5.7.6
2024-12-31 11:58:22 -06:00
Juliusz Sosinowicz
c3ada2760a
Add ntp 4.2.8p17 to tested versions
2024-12-31 17:06:46 +01:00
Juliusz Sosinowicz
af96f294fa
Add MD4 to EVP layer
2024-12-31 16:58:58 +01:00
JacobBarthelmeh
70e41d1ed1
prepare for release 5.7.6
2024-12-31 08:27:53 -07:00
Juliusz Sosinowicz
3cb2bb3759
OBJ_sn2nid: use correct short names
2024-12-31 12:50:04 +01:00
Daniel Pouzzner
d40698a103
Merge pull request #8322 from JacobBarthelmeh/coverity
...
fix for dead code warning CID444417
2024-12-30 17:56:28 -06:00
JacobBarthelmeh
c9bcbd8c52
fix for dead code warning CID444417
2024-12-30 16:14:28 -07:00
David Garske
8d7c60017c
Merge pull request #8263 from JacobBarthelmeh/rsa_pss
...
account for rsa_pss_rsae vs rsa_pss_pss type
2024-12-28 13:47:30 -08:00
JacobBarthelmeh
af4b5c2097
only run RSA-PSS interop test if cipher suites with ephemeral keys are available
2024-12-28 11:34:17 -08:00
JacobBarthelmeh
1ae0f7c66f
do not do resume with new test case
...
add wolfssl_no_resume flag to openssl.test
check for version of openssl testing against
check if RSA is supported for test case
guard on test case for TLS versions supported
2024-12-28 02:09:49 -08:00
David Garske
2e8f0176c9
Merge pull request #8316 from JacobBarthelmeh/x509ref
...
Up X509 refrence count and add test case
2024-12-27 10:37:28 -08:00
JacobBarthelmeh
3ee08d81db
fix for check on number of objects when free'ing and add test case
2024-12-27 08:09:03 -08:00
David Garske
5c6fdb52f1
Merge pull request #8319 from philljj/fix_coverity
...
coverity: correct lock message, check fd value.
2024-12-26 12:53:36 -08:00
JacobBarthelmeh
f57f044b39
Merge pull request #8318 from dgarske/CID444418
...
Fix for finishedSz checking with TLSv1.3 and `WOLFSSL_HAVE_TLS_UNIQUE` (CID444418)
2024-12-24 15:41:25 -07:00
jordan
c71392bb7e
coverity: correct lock message, check fd value.
2024-12-24 16:31:16 -06:00
David Garske
e1baf27831
CID444418. Fix for finishSz checking with TLSv1.3 and WOLFSSL_HAVE_TLS_UNIQUE.
2024-12-24 13:38:57 -08:00
JacobBarthelmeh
17c17cde13
Merge pull request #8317 from night1rider/CID_444416
...
Free Val and Oid before returning error
2024-12-24 10:38:26 -07:00
JacobBarthelmeh
838fe22e61
Merge pull request #8314 from SparkiDev/aarch64_no_crypto_fallback
...
Aarch64 ASM: check CPU features before hw crypto instr use
2024-12-24 10:15:23 -07:00
JacobBarthelmeh
98d212d60b
Merge pull request #8315 from SparkiDev/regression_fixes_16
...
Regression testing fixes
2024-12-24 09:56:20 -07:00
msi-debian
545257e498
CID 444416
2024-12-24 09:35:40 -07:00
JacobBarthelmeh
3aa2881cd4
account for rsa_pss_rsae vs rsa_pss_pss type
2024-12-23 23:45:33 -07:00
Sean Parkinson
cad2ebde04
Regression testing fixes
...
test.c: Dilithium private key not available in cert_test.h unless
signing is enabled.
./configure --disable-shared --enable-dilithium=make,44,65,87
./configure --disable-shared --enable-dilithium=make,sign,44,65,87
./configure --disable-shared --enable-dilithium=make,verify,44,65,87
test.c: Dilithium doesn't have decode/encode when
WOLFSSL_DILITHIUM_NO_ASN1 is defined.
./configure --disable-shared --enable-dilithium=yes
CFLAGS=-DWOLFSSL_DILITHIUM_NO_ASN1
2024-12-24 13:55:21 +10:00
Sean Parkinson
e1851cd482
Aarch64 ASM: check CPU features before hw crypto instr use
...
For SHA-256, SHA-512 and SHA3, get the CPU features to see if hardware
crypto is available. If not then fallback to an alternate
implementation.
2024-12-24 12:08:12 +10:00
kaleb-himes
2d01363e57
Remove trailing whitespace on a line
2024-12-23 17:14:38 -07:00
Sean Parkinson
93812e4286
Merge pull request #8289 from JacobBarthelmeh/harden
...
add option for additional sanity checks
2024-12-24 09:17:08 +10:00
JacobBarthelmeh
ee9b88541f
change default to no for --enable-faultharden
2024-12-23 13:51:30 -07:00
kaleb-himes
5ad5ba2299
Fix more overlong lines and add one more customer setting
2024-12-23 11:44:56 -07:00
Daniel Pouzzner
a13d0fdd86
Merge pull request #8311 from SparkiDev/aarch64_cpuid_fix
...
Aarch64 CPU id: fix for privilege instruction detection
2024-12-23 11:52:14 -06:00
JacobBarthelmeh
2409971b14
Merge pull request #8224 from julek-wolfssl/dtls-server-demux
...
DTLS: Add server side stateless and CID QoL API
2024-12-23 10:01:01 -07:00
JacobBarthelmeh
36d5342f6b
Merge pull request #8310 from douzzer/20241221-wolfCrypt-more-AES_BLOCK_SIZE
...
20241221-wolfCrypt-more-AES_BLOCK_SIZE
2024-12-23 09:26:05 -07:00
Sean Parkinson
e7d7e47e07
Aarch64 CPU id: fix for privilege instruction detection
...
AES/PMULL is in four bits 4-7.
When value is 0b0010, this indicates both AES and PMULL. Fix code to set
both.
2024-12-23 11:23:14 +10:00
David Garske
2bcad989da
Merge pull request #8309 from douzzer/20241221-fix-CEscape-bounds-check
...
20241221-fix-CEscape-bounds-check
2024-12-21 14:51:46 -08:00
Daniel Pouzzner
50a0773c09
Merge pull request #8285 from LinuxJedi/gaisler
...
Add initial support for Gaisler-BCC with Sparc
2024-12-21 11:03:39 -06:00
Daniel Pouzzner
ed18bf3deb
In wolfcrypt/src/port/ and IDE/, replace remaining uses of AES_BLOCK_SIZE with WC_AES_BLOCKSIZE for compatibility with OPENSSL_COEXIST.
...
Automated replacement with
```
git ls-files -z wolfcrypt/src/port/ IDE/ | xargs -0 pcre2grep -l '[^_]AES_BLOCK_SIZE' | xargs sed --regexp-extended --in-place 's/([^_])AES_BLOCK_SIZE/\1WC_AES_BLOCK_SIZE/g'
```
Checked for mis-transformations with
```
git ls-files -z | xargs -0 pcre2grep '[^-[()+*/[:space:]]WC_AES_BLOCK_SIZE' | less
```
Checked for residual hits with
```
git ls-files -z | xargs -0 pcre2grep '[^_]AES_BLOCK_SIZE' | less
```
Deliberately excluded:
* ChangeLog.md -- do not alter history.
* doc/ -- do not confuse documentation with newly prefixed macro, because AES_BLOCK_SIZE is available unless -DOPENSSL_COEXIST.
* tests/api.c -- the unit tests deliberately use compatibility names, and are not compatible with -DOPENSSL_COEXIST.
* wrapper/CSharp/wolfSSL_CSharp/wolfCrypt.cs -- false positive hits on C# names.
* wrapper/CSharp/wolfCrypt-Test/wolfCrypt-Test.cs -- false positive hits on C# names.
* reference in wolfssl/wolfcrypt/aes.h that defines AES_BLOCK_SIZE when -UOPENSSL_COEXIST.
* reference in wolfssl/wolfcrypt/settings.h that defines WC_AES_BLOCK_SIZE for old FIPS when -UWC_AES_BLOCK_SIZE.
2024-12-21 10:28:18 -06:00
Daniel Pouzzner
4ff73b9024
wolfssl/wolfcrypt/aes.h: fix stray reference to AES_BLOCK_SIZE in def for GHASH_ONE_BLOCK().
2024-12-21 10:08:17 -06:00
Daniel Pouzzner
33a47c1c04
Merge pull request #8265 from JacobBarthelmeh/armasm
...
armasm with opensslcoexist build
2024-12-21 10:06:27 -06:00
Daniel Pouzzner
b07f2cb461
wolfcrypt/src/coding.c: fix incorrect array bounds check in CEscape(), introduced in 8bbe8a7c8a (before which there was no bounds check at all).
2024-12-21 09:47:07 -06:00
Andrew Hutchings
231cea34ef
Add initial support for Gaisler-BCC with Sparc
...
Slight modifications and documentation to get wolfSSL working with
Gaisler Sparc CPUs and their cross-compilers.
2024-12-21 09:19:58 +00:00
Daniel Pouzzner
ad20593569
Merge pull request #8279 from LinuxJedi/sk_push_comments
...
Fix code comments for some x509.c functions
2024-12-21 00:09:18 -06:00
Daniel Pouzzner
67800c3a22
Merge pull request #8292 from JacobBarthelmeh/xsocktlen
...
set dk-s7g2 socklent
2024-12-21 00:01:33 -06:00
Daniel Pouzzner
5ef4732745
Merge pull request #8299 from JacobBarthelmeh/cert_regen
...
end of year test certificate renewal
2024-12-20 17:41:33 -06:00
Daniel Pouzzner
9d3e477b63
src/ssl.c: gate wolfSSL_dtls_set_pending_peer() on !defined(WOLFSSL_NO_SOCK), not just defined(WOLFSSL_DTLS_CID).
...
tests/api.c: in test_dtls12_basic_connection_id(), omit chacha20 suites if defined(HAVE_FIPS), and fix gate on DHE-PSK-NULL-SHA256.
2024-12-20 17:24:13 -06:00
Daniel Pouzzner
afc7e0eb8c
Merge pull request #8308 from cconlon/sessTickLenCheck
...
Remove dead code in TLSX_PopulateExtensions() around MAX_PSK_ID_LEN check
2024-12-20 16:41:09 -06:00
JacobBarthelmeh
961453b5ee
fix for free'ing up memory after use
2024-12-20 14:58:57 -07:00
JacobBarthelmeh
b273bff4e9
regenerate certs_test.h with raw dilithium keys
2024-12-20 11:50:11 -07:00
JacobBarthelmeh
67f3343a5d
Merge pull request #8306 from SparkiDev/kyber_no_avx2_fix
...
ML-KEM/Kyber: fix kyber_prf() for when no AVX2
2024-12-20 11:40:46 -07:00
JacobBarthelmeh
7cebe95138
Merge pull request #8304 from SparkiDev/regression_fixes_15
...
Regression testing: fixes
2024-12-20 11:29:15 -07:00
JacobBarthelmeh
3dd9f4631d
Merge pull request #8305 from kareem-wolfssl/zd19044
...
Fix a couple of missing bounds checks found via code analyzer.
2024-12-20 11:20:19 -07:00
JacobBarthelmeh
19e68ea71a
add a faketime test and update cert buffers
2024-12-20 10:35:58 -07:00
Chris Conlon
f68f99b000
Remove dead code in TLSX_PopulateExtensions() around MAX_PSK_ID_LEN check
2024-12-20 09:48:01 -07:00
Sean Parkinson
e507c466d5
ML-KEM/Kyber: fix kyber_prf() for when no AVX2
...
When no AVX2 available, kyber_prf() is called to produce more than one
SHAKE-256 blocks worth of ouput. Otherwise only one block is needed.
Changed function to support an outlen of greater than one block.
2024-12-20 11:03:58 +10:00
Kareem
8bbe8a7c8a
Fix a couple of missing bounds checks found via code analyzer.
2024-12-19 17:01:25 -07:00
night1rider
6617a8afca
Updating Client/Server with myGenExtMaster Callback
2024-12-19 16:27:35 -07:00
Sean Parkinson
b7c1e1cf35
Regression testing: fixes
...
src/x509.c: wolfssl_x509_name_entry_set() ne->object is freed if call to
wolfSSL_OBJ_nid2obj_ex() fails. Always assign directly back to
ne->object.
wolfcrypt/test/test.c: aes_ctr_test() doesn't need AES decrypt
./configure '--disable-shared' '--enable-cryptonly'
'CFLAGS=-DNO_AES_DECRYPT' '--disable-aescbc' '--disable-aesofb'
'--disable-aescfb' '--disable-aesgcm' '--disable-aesccm'
'--enable-aesctr' '--disable-aesxts' '--disable-aeseax'
tests/api.c: test_X509_STORE_InvalidCa() only defined when !NO_RSA
./configure '--disable-shared' '--enable-opensslall' '--disable-rsa'
tests/api.c: test_wolfSSL_GENERAL_NAME_print() free ridObj if not
assigned into gn.
2024-12-20 09:25:03 +10:00
Sean Parkinson
00f83facb2
Merge pull request #8302 from cconlon/sessTickLenCheck
...
Loosen MAX_PSK_ID_LEN check in TLSX_PopulateExtensions() to only server side
2024-12-20 08:44:10 +10:00
night1rider
2f4329306b
Initial Extended Master Secret PK Callback ZD#19038
2024-12-19 15:43:58 -07:00
JacobBarthelmeh
8ca790218c
certs_test.h is using raw dilithium keys
2024-12-19 15:23:37 -07:00
Daniel Pouzzner
ad8f74b650
examples/client/client.c and examples/client/client.c: use XSTRLCPY() to assure proper null termination.
2024-12-19 16:14:59 -06:00
JacobBarthelmeh
8fa238e554
Merge pull request #8301 from douzzer/20241219-gating-fixes
...
20241219-gating-fixes
2024-12-19 14:38:55 -07:00
JacobBarthelmeh
5b6ffe0795
add *.revoked to codespell skip
2024-12-19 14:35:43 -07:00
JacobBarthelmeh
abc87f9c6f
add regression test for gencertbuf.pl
2024-12-19 14:32:46 -07:00
Chris Conlon
1101841b95
Loosen MAX_PSK_ID_LEN check in TLSX_PopulateExtensions() to only server side
2024-12-19 14:26:22 -07:00
JacobBarthelmeh
e66905aaf6
fix for gencertbuf script and add dilithium public key
2024-12-19 14:25:12 -07:00
Daniel Pouzzner
994f218fcb
src/ssl.c and wolfssl/internal.h: gate in wolfSSL_get_ciphers_compat() in OPENSSL_EXTRA builds, so that --with-sys-crypto-policy works with OPENSSL_EXTRA but without OPENSSL_ALL.
...
configure.ac: more fixes for FIPS v6 armasm settings, re ENABLED_ARMASM_CRYPTO.
2024-12-19 14:29:39 -06:00
Juliusz Sosinowicz
ca4b1667ee
strcpy -> strncpy
2024-12-19 11:19:47 +01:00
Juliusz Sosinowicz
feff68d4fd
Increase buffer to make room for \0
2024-12-19 11:01:27 +01:00
Daniel Pouzzner
836ee1cbd5
Merge pull request #8298 from lealem47/zd18920
...
Printing the rfc822Mailbox x509 attribute
2024-12-18 22:19:32 -06:00
Daniel Pouzzner
ed76d8ea10
Merge pull request #8297 from miyazakh/ra_jankins
...
Fix RA6M4 jankins failure
2024-12-18 22:18:43 -06:00
Daniel Pouzzner
be2e779280
Merge pull request #8205 from philljj/fedora_crypto_policy
...
fedora crypto-policies: initial support.
2024-12-18 20:54:36 -06:00
JacobBarthelmeh
a5f9ec67c9
Merge pull request #8251 from gojimmypi/pr-post-release-bdd62314-espressif
...
Espressif Managed Component wolfSSL 5.7.4 post-release update
2024-12-18 16:45:33 -07:00
JacobBarthelmeh
df3897d39f
adjust tests after cert renewal
2024-12-18 16:19:51 -07:00
JacobBarthelmeh
e998dda1db
update test certs to have v3
2024-12-18 16:12:08 -07:00
JacobBarthelmeh
4ed14af331
if no extensions are present a v1 certificate was generated, add a SKID extension to avoid that
2024-12-18 16:11:18 -07:00
jordan
b5c47d27e0
fedora crypto-policies: initial support.
2024-12-18 16:56:36 -06:00
JacobBarthelmeh
bf6ef15be4
update test certificates in header file
2024-12-18 14:27:26 -07:00
JacobBarthelmeh
28184dd8cc
update certificates in certs directory
2024-12-18 14:26:15 -07:00
David Garske
afff48f0d6
Merge pull request #8253 from douzzer/20241204-more-C89-expansion
...
20241204-more-C89-expansion
2024-12-18 10:44:18 -08:00
Daniel Pouzzner
122502e2b1
wolfCrypt -Wconversion expansion: fix numerous warnings, all benign, from -Warith-conversion -Wenum-conversion -Wfloat-conversion -Wsign-conversion.
2024-12-18 11:51:06 -06:00
Juliusz Sosinowicz
9cb75ef5f8
fixup! DTLS: Add server side stateless and CID QoL API
2024-12-18 09:31:25 +01:00
Juliusz Sosinowicz
fe9a5fcd42
fixup! Code review and jenkins fixes
2024-12-18 09:31:25 +01:00
Juliusz Sosinowicz
faa7b8dfaa
wolfSSLReceive: Error return on interrupted connection
...
Interrupted connection should return control to the user since they may want to handle the signal that caused the interrupt. Otherwise, we might never give back control to the user (the timeout would error out but that causes a big delay).
socat.yml: in test 475, the test would send a SIGTERM after 3 seconds. We would continue to ignore this signal and continue to call `recvfrom`. Instead we should error out and give control back to the user.
2024-12-18 09:31:25 +01:00
Juliusz Sosinowicz
a1ee953411
Protect peer access when WOLFSSL_RW_THREADED
2024-12-18 09:31:25 +01:00
Juliusz Sosinowicz
4795e0d920
Refactor dtls pending peer processing
2024-12-18 09:31:25 +01:00
Juliusz Sosinowicz
3ded2bc05d
Code review and jenkins fixes
2024-12-18 09:31:25 +01:00
Juliusz Sosinowicz
71337d2959
Client TLS: Set traffic decrypt keys when parsing Finished
2024-12-18 09:31:25 +01:00
Juliusz Sosinowicz
daa57c492d
DTLS: Add server side stateless and CID QoL API
...
- wolfDTLS_accept_stateless - statelessly listen for incoming connections
- wolfSSL_inject - insert data into WOLFSSL object
- wolfSSL_SSL(Enable|Disable)Read - enable/disable reading from IO
- wolfSSL_get_wfd - get the write side file descriptor
- wolfSSL_dtls_set_pending_peer - set the pending peer that will be upgraded to regular peer when we successfully de-protect a DTLS record
- wolfSSL_dtls_get0_peer - zero copy access to the peer address
- wolfSSL_is_stateful - boolean to check if we have entered stateful processing
- wolfSSL_dtls_cid_get0_rx - zero copy access to the rx cid
- wolfSSL_dtls_cid_get0_tx - zero copy access to the tx cid
- wolfSSL_dtls_cid_parse - extract cid from a datagram/message
2024-12-18 09:31:24 +01:00
Sean Parkinson
ba050d6a3f
Merge pull request #8296 from douzzer/20241217-FIPS-v6-ENABLED_ARMASM_CRYPTO-fixes
...
20241217-FIPS-v6-ENABLED_ARMASM_CRYPTO-fixes
2024-12-18 15:27:08 +10:00
Lealem Amedie
651dab3dbf
Printing the rfc822Mailbox x509 attribute
2024-12-17 15:39:23 -07:00
Hideki Miyazaki
39c11c269f
Fix RA6M jankins failure
2024-12-18 07:37:21 +09:00
Daniel Pouzzner
60afdb557d
Merge pull request #8273 from dgarske/no_tls
...
Enable support for no TLS while allowing certificate manager
2024-12-17 16:24:57 -06:00
JacobBarthelmeh
613c1aa16d
fix for no malloc build
2024-12-17 14:47:45 -07:00
David Garske
356889a528
Add --disable-tls option that can be used with --enable-all to disable TLS features and set NO_TLS. Useful for allowing certificate manager and crypto compatibility API's only.
2024-12-17 13:40:03 -08:00
Daniel Pouzzner
f23a2f2f48
wolfcrypt/src/aes.c: add missing WOLFSSL_ARMASM gate clause around wolfCrypt_FIPS_aes_ro_sanity, necessitated by 514a92d6ee/#8293.
2024-12-17 14:17:52 -06:00
JacobBarthelmeh
87ae31b48f
some additional sanity checks with harden build
2024-12-17 12:47:42 -07:00
Daniel Pouzzner
7b57ef4912
configure.ac: fix faulty logic in FIPS v6 feature calculation re ENABLED_ARMASM_CRYPTO, originally added in 6e0a90190f.
2024-12-17 12:21:47 -06:00
David Garske
6151160e58
Further fixes with NO_TLS to support use with compatibility layer.
2024-12-17 09:24:38 -08:00
Kaleb Himes
fcbea85ded
Merge pull request #8291 from douzzer/20241213-fips-check-refactor-assoc-arrays
...
20241213-fips-check-refactor-assoc-arrays
2024-12-17 10:23:51 -07:00
David Garske
a2b5da8651
Fix nested NO_TLS.
2024-12-17 08:33:33 -08:00
David Garske
16b2884cf1
Fix issues in test_tls13_apis with no filesystem or no RSA/ECC.
2024-12-17 08:33:33 -08:00
David Garske
14e3372826
Enable support for using certificate manager only. Fixes for building without TLS enabled (NO_TLS). ZD 19054. Tested using ./configure --disable-tlsv12 --disable-tls13 CFLAGS="-DNO_TLS" && make check
2024-12-17 08:33:32 -08:00
Daniel Pouzzner
22e95081cd
Merge pull request #8181 from gojimmypi/dev-compiler-message
...
Initialize vars & change types to appease Windows/VS
2024-12-16 23:19:05 -06:00
Daniel Pouzzner
058138eb00
Merge pull request #8286 from julek-wolfssl/hostap-action-update
...
Use source hostap repo
2024-12-16 23:07:05 -06:00
Daniel Pouzzner
5aeabbfa3c
Merge pull request #8245 from julek-wolfssl/mbed-interop
...
Add CID interop with mbedtls
2024-12-16 23:04:19 -06:00
Daniel Pouzzner
9d7c02589f
Merge pull request #8276 from SparkiDev/ed448_muladd_full_reduce
...
EdDSA Ed448: sc_muladd now does full reduction
2024-12-16 20:29:49 -06:00
Daniel Pouzzner
a1035cf8df
Merge pull request #8294 from LinuxJedi/test_compile_issue
...
Fix compile issue with NO_WOLFSSL_DIR
2024-12-16 19:26:24 -06:00
Daniel Pouzzner
b5935f38d7
Merge pull request #8282 from SparkiDev/iphone_no_sha3_instrs
...
MacOS: allow SHA-3 instructions to be explicitly not used
2024-12-16 16:55:09 -06:00
Daniel Pouzzner
fd22bfc0b7
Merge pull request #8293 from SparkiDev/aarch64_no_crypto
...
Aarch64: make code compile when no hardware crypto avail
2024-12-16 14:57:53 -06:00
philljj
c5c607bc87
Merge pull request #8295 from douzzer/20241216-linuxkm-export-ns-quotes
...
20241216-linuxkm-export-ns-quotes
2024-12-16 12:37:21 -06:00
Daniel Pouzzner
6fbc18f0dc
linuxkm/Kbuild and linuxkm/module_exports.c.template: on kernel >=6.13, add quotes around the namespace arg to EXPORT_SYMBOL_NS_GPL() (upstream change actually made in 6.13-rc2).
2024-12-16 11:43:26 -06:00
Andrew Hutchings
61cb5b479f
Fix compile issue with NO_WOLFSSL_DIR
...
`test_wolfSSL_CTX_load_system_CA_certs()` would try to use DIR functions
when `NO_WOLFSSL_DIR` was used.
2024-12-16 17:23:49 +00:00
Sean Parkinson
514a92d6ee
Aarch64: make code compile when no hardware crypto avail
...
Detects availability of instructions for Aarch64.
2024-12-16 17:46:08 +10:00
Sean Parkinson
e3876fcab7
Merge pull request #8287 from JacobBarthelmeh/sigfault
...
fix for sig fault harden build
2024-12-16 09:04:29 +10:00
Daniel Pouzzner
7c5451c742
fips-check.sh fixes + enhancements:
...
* change default WOLFSSL_REPO to the canonical upstream.
* refactor tag calculation without bash associative arrays, for backward compat.
* add support for fetching FIPS tags/branches into a persistent fips repo if one is found at ../fips.
* use --shared in git clones where applicable.
* always check out the master FIPS branch, for its tooling, and always make sure it's up to date with $FIPS_REPO.
* after each fetch for a previously unknown tag, explicitly associate the tag with the FETCH_HEAD.
2024-12-13 21:36:40 -06:00
Daniel Pouzzner
4bdccac584
Merge pull request #8290 from wolfSSL/revert-8277-aarch64_no_crypto
...
Revert "Aarch64: make code compile when no hardware crypto avail"
2024-12-13 20:43:01 -06:00
JacobBarthelmeh
ad03518aa8
armasm with opensslcoexist build
2024-12-13 17:11:32 -07:00
JacobBarthelmeh
6442689d22
set dk-s7g2 socklent
2024-12-13 17:01:58 -07:00
David Garske
71325a2a32
Revert "Aarch64: make code compile when no hardware crypto avail"
2024-12-13 13:52:53 -08:00
JacobBarthelmeh
f0f50f1837
add option for additional sanity checks
2024-12-13 14:42:51 -07:00
JacobBarthelmeh
d7e40e7413
Merge pull request #8264 from dgarske/various_20241206
...
Various cleanups and fixes
2024-12-13 13:48:10 -07:00
JacobBarthelmeh
68e85ef33a
Merge pull request #8252 from anhu/use_srtp_retcode
...
wolfSSL_CTX_set_tlsext_use_srtp() should return 1 on failure and 0 up…
2024-12-13 13:35:49 -07:00
JacobBarthelmeh
e76e0e33fd
Merge pull request #8283 from rlm2002/enableAlwaysKeepSNI
...
WOLFSSL_ALWAYS_KEEP_SNI enabled by default with --enable-jni
2024-12-13 13:32:47 -07:00
JacobBarthelmeh
a22176af40
fix for sig fault harden build
2024-12-13 10:34:23 -07:00
Juliusz Sosinowicz
3407f21e69
Use source hostap repo
2024-12-13 17:12:23 +01:00
David Garske
79d9b2d6c3
Merge pull request #8277 from SparkiDev/aarch64_no_crypto
...
Aarch64: make code compile when no hardware crypto avail
2024-12-12 15:49:57 -08:00
Sean Parkinson
24bb2b7fab
Aarch64: make code compile when no hardware crypto avail
...
Detects availability of instructions for Aarch64.
2024-12-13 09:16:11 +10:00
Ruby Martin
b34a39a6bc
WOLFSSL_ALWAYS_KEEP_SNI enabled by default with --enable-jni
2024-12-12 15:49:47 -07:00
Sean Parkinson
2aacc7cd87
MacOS: allow SHA-3 instructions to be explicitly not used
...
Some iPads and iPhones don't support SHA-3 instructions.
Allow SHA-3 instructions to explicitly not be used for these devices.
2024-12-13 08:25:39 +10:00
Sean Parkinson
65fc8f8d77
Merge pull request #8280 from kareem-wolfssl/zd19046
...
Add support for the RFC822 Mailbox attribute.
2024-12-13 08:07:46 +10:00
Kareem
d4af181593
Add support for the RFC822 Mailbox attribute.
2024-12-12 12:37:32 -07:00
Andrew Hutchings
8ecbd3479e
Fix code comments for some x509.c functions
...
The return of `wolfSSL_sk_push` was changed, but some of the functions
that use it did not have their return comments updated appropriately.
2024-12-12 16:21:16 +00:00
Daniel Pouzzner
dd3012682a
Merge pull request #8278 from JacobBarthelmeh/settings
...
adjustments on sanity check of build
2024-12-11 17:04:58 -06:00
Daniel Pouzzner
1f1e985d73
Merge pull request #8268 from bandi13/fixMemleak
...
Fix memory leak
2024-12-11 16:35:38 -06:00
Sean Parkinson
c9c28335ae
EdDSA Ed448: sc_muladd now does full reduction
...
sc_muladd was reducing to word boundary and not to order.
Now reduces to order as last step.
2024-12-12 08:33:35 +10:00
Daniel Pouzzner
d825b08e16
Merge pull request #8275 from SparkiDev/aarch64_poly1305_fix
...
Aarch64 Poly1305: fix corner case
2024-12-11 16:24:36 -06:00
Daniel Pouzzner
88241f1a2c
Merge pull request #8267 from ColtonWilley/pkcs11_cert_support
...
PKCS11 cert support
2024-12-11 16:04:58 -06:00
Daniel Pouzzner
ee4366acc5
Merge pull request #8162 from redbaron/find-threads
...
CMAKE: look for pthreads when importing wolfSSL if required
2024-12-11 14:36:04 -06:00
Colton Willey
2039d6371f
Remove redundant NULL check
2024-12-11 12:25:35 -08:00
Daniel Pouzzner
2ea2e6bf59
Merge pull request #8233 from ColtonWilley/x509_store_add_cert_ref_count
...
Use proper ref count handling when adding to x509 store
2024-12-11 11:54:29 -06:00
JacobBarthelmeh
2749884fdc
defining custom config avoids warning of library builds pulling in options.h
2024-12-11 09:50:52 -07:00
JacobBarthelmeh
45992164d6
make new sanity check be a warning
2024-12-11 09:46:39 -07:00
Sean Parkinson
c0f3b433b2
Aarch64 Poly1305: fix corner case
...
Don't mask top 26 bits as it may have next bit set as reduction step was
only approximate.
2024-12-11 12:49:21 +10:00
Anthony Hu
762c36687f
Add a test.
2024-12-10 21:21:41 -05:00
Sean Parkinson
7ef328548d
Merge pull request #8274 from douzzer/20241210-update-wolfssl_known_macro_extras
...
20241210-update-wolfssl_known_macro_extras
2024-12-11 10:45:11 +10:00
JacobBarthelmeh
59ea24f915
Merge pull request #8225 from gojimmypi/pr-espressif-improve-sha-msg
...
Improve Espressif SHA HW/SW mutex messages
2024-12-10 17:30:03 -07:00
Daniel Pouzzner
6a05ba7cce
.wolfssl_known_macro_extras: regenerate
2024-12-10 17:20:24 -06:00
JacobBarthelmeh
1208a7499b
Merge pull request #8272 from douzzer/20241210-fixes
...
20241210-fixes
2024-12-10 13:35:09 -07:00
Daniel Pouzzner
d257a59087
add support for WOLFSSL_NO_OPTIONS_H:
...
* activate WOLFSSL_NO_OPTIONS_H in linuxkm/Kbuild for in-module test.o and benchmark.o.
* refine explanatory comments in settings.h re WOLFSSL_USE_OPTIONS_H, WOLFSSL_NO_OPTIONS_H, and WOLFSSL_CUSTOM_CONFIG.
* add safety catch to options.h/options.h.in to inhibit inclusion if defined(WOLFSSL_NO_OPTIONS_H).
* for good measure, add explicit check for WOLFSSL_NO_OPTIONS_H to wolfcrypt/benchmark/benchmark.c and wolfcrypt/test/test.c.
2024-12-10 13:02:37 -06:00
Colton Willey
00386c76bf
No redundant NULL check on free
2024-12-10 09:43:03 -08:00
JacobBarthelmeh
e443366748
Merge pull request #8270 from julek-wolfssl/actions-ubuntu-22.04
...
Revert to ubuntu-22.04
2024-12-10 09:14:00 -07:00
Juliusz Sosinowicz
1d2acd9de6
Revert to ubuntu-22.04
2024-12-10 16:27:41 +01:00
JacobBarthelmeh
0772cf692d
Merge pull request #8262 from embhorn/zd18968
...
Add sanity check for configuration method
2024-12-09 21:22:54 -07:00
Colton Willey
0c20a20acc
Use char instead of sword8, sanity length check on CKA_VALUE
2024-12-09 16:09:04 -08:00
Daniel Pouzzner
ba59f1af19
wolfssl/wolfcrypt/settings.h: use #warning, not #error, for "No configuration for wolfSSL detected, check header order", to avoid unnecessary breakage of old projects with nonstandard custom settings.
2024-12-09 17:04:38 -06:00
gojimmypi
7bc026540b
Improve Espressif SHA HW/SW mutex messages
2024-12-09 14:51:18 -08:00
Colton Willey
0cda59e00e
Add support for cert format in get cert crypto callback
2024-12-09 14:32:02 -08:00
David Garske
c4e319b092
Cleanup the gating for WOLFSSL_NO_AES_CFB_1_8.
2024-12-09 13:51:51 -08:00
Andras Fekete
ff66998575
Fix memory leak
2024-12-09 16:24:38 -05:00
Colton Willey
c83c9e68c9
Updates per review comments
2024-12-09 13:10:32 -08:00
Daniel Pouzzner
e248d8499a
move !defined(EXTERNAL_OPTS_OPENVPN) assert from src/internal.c to wolfssl/wolfcrypt/types.h with refinements; refine logic+message of assert in wolfssl/wolfcrypt/settings.h re "wolfssl/options.h included in compiled wolfssl library object..".
2024-12-09 15:02:41 -06:00
Colton Willey
324b87614e
Initial implementation for using PKCS11 to retrieve certificate for SSL CTX
2024-12-09 12:15:41 -08:00
Eric Blankenhorn
fcce09a4d3
Fix from review
2024-12-09 12:59:37 -06:00
Eric Blankenhorn
c77bea6691
Disable hitch OSP test
2024-12-09 12:45:54 -06:00
Eric Blankenhorn
3d0cc250b9
Add sanity check for configuration method
2024-12-09 12:03:25 -06:00
JacobBarthelmeh
67fb29a6f6
Merge pull request #8255 from julek-wolfssl/nss-interop
...
Add nss interop
2024-12-09 09:52:07 -07:00
David Garske
314f7575fa
Fixes for macro names.
2024-12-09 08:30:47 -08:00
Juliusz Sosinowicz
aa662ad50a
fix redirect order
2024-12-09 13:38:07 +01:00
Juliusz Sosinowicz
a3be826895
use unique key
2024-12-09 13:38:07 +01:00
Juliusz Sosinowicz
3275ebf54b
add shebang
2024-12-09 13:37:20 +01:00
Juliusz Sosinowicz
0961be7711
Add CID interop with mbedtls
2024-12-09 13:37:18 +01:00
Juliusz Sosinowicz
ba4d1e6815
Add nss interop
2024-12-09 12:42:32 +01:00
Juliusz Sosinowicz
0e8320347c
CID also supported in DTLS 1.2
2024-12-09 12:09:54 +01:00
David Garske
017f931f8b
Various cleanups and fixes:
...
* Fix to properly set configure.ac LMS/XMSS enables and build of those code files.
* Remove duplicate aes.c `wc_AesSetKeyLocal` call to `wc_AesSetIV`. Moved earlier in function in commit a10260ca5f .
* Benchmark missing time.h with NO_ASN_TIME.
* Added option to support disabling AES CFB 1/8 `WOLFSSL_NO_AES_CFB_1_8`.
* Fixes for building with combinations of `WOLFSSL_RSA_VERIFY_ONLY` and `WOLFSSL_RSA_PUBLIC_ONLY`.
* Fix for building `--enable-stacksize=verbose` with single threaded.
* Various tab and formatting cleanups.
ZD 18996
2024-12-06 16:45:33 -08:00
JacobBarthelmeh
f764dbeee1
Merge pull request #8254 from douzzer/20241204-WOLF_AGG_DUMMY_MEMBER
...
20241204-WOLF_AGG_DUMMY_MEMBER
2024-12-06 14:07:32 -07:00
Daniel Pouzzner
0ad072a34b
src/internal.c: in HashSkeData(), remove unneeded logically faulty nullness check around XFREE(ssl->buffers.digest.buffer, ...).
2024-12-06 13:01:40 -06:00
Daniel Pouzzner
0381a47d7e
peer review: refactor HAVE_ANONYMOUS_INLINE_AGGREGATES and HAVE_EMPTY_AGGREGATES to conform to wolfssl convention -- defined() for true, !defined() for false -- while retaining ability for user override-off by passing in explicit 0 definition.
2024-12-06 13:01:40 -06:00
Daniel Pouzzner
447d5ea6ee
fips-check.sh: add support for WOLFSSL_REPO and noautogen option; tweak git fetching to keep wolfssl and fips tags distinct, and fetch all needed tags by name to assure availability for checkout. also, hide stdout noise from pushd/popd.
2024-12-06 13:01:40 -06:00
Daniel Pouzzner
aec0345f90
update fips-check.sh for cert #4718 : remap linuxv5 as an alias for linuxv5.2.1, and add linuxv5-RC12.
2024-12-06 13:01:40 -06:00
Daniel Pouzzner
27e0df040f
src/ssl_crypto.c: revert FIPS gate threshold in wolfSSL_AES_decrypt() changed in d85c108952 -- original value was correct, misdiagnosed by faulty test.
2024-12-06 13:01:40 -06:00
Daniel Pouzzner
3dcc12b30a
wolfssl/wolfcrypt/types.h and wolfssl/wolfcrypt/hash.h: define WOLF_AGG_DUMMY_MEMBER, pivoting on HAVE_EMPTY_AGGREGATES, and use WOLF_AGG_DUMMY_MEMBER in wc_Hashes.
2024-12-06 13:01:40 -06:00
Daniel Pouzzner
37acac2eb3
configure.ac: fix SC1105 ("Shells disambiguate (( differently or not at all.").
2024-12-06 13:01:40 -06:00
Daniel Pouzzner
66c874bded
configure.ac: add --enable-fips=cert4718 alias for v5, and make --enable-fips=v5 set FIPS to 5.2.1; set DEF_FAST_MATH and DEF_SP_MATH to "no" when "yes" would conflict with user-supplied arguments.
2024-12-06 13:01:40 -06:00
JacobBarthelmeh
86b24ef6fa
Merge pull request #8261 from julek-wolfssl/libspdm-action
...
Add libspdm action
2024-12-06 11:44:14 -07:00
Juliusz Sosinowicz
6cede13478
Add libspdm action
...
Depends on https://github.com/wolfSSL/osp/pull/217
2024-12-06 17:12:06 +01:00
David Garske
0ed187e16d
Merge pull request #8256 from LinuxJedi/ADA-7461
...
Fix broken verify on Ada wrapper
2024-12-06 07:59:01 -08:00
Andrew Hutchings
158d62591f
Fix broken verify on Ada wrapper
...
The Ada wrapper had an `&` operator for the verification mode. This
effectively caused the verification mode to equal `0`.
The operator has been switched to `or` now, in addition, a getter has
been added to the API. This allows for the test I've added to the server
code to verify that it is being set correctly.
`OPENSSL_ALL` flag added to Ada so that the verify mode getter function
is compiled in.
Fixes #7461
Thanks to @dalybrown for reporting it.
2024-12-06 12:44:15 +00:00
gojimmypi
06c0c09940
Espressif Managed Component wolfSSL 5.7.4 post-release update
2024-12-05 21:46:33 -08:00
JacobBarthelmeh
20643577e6
Merge pull request #8258 from dgarske/get_verify
...
Expose compatibility get_verify functions with openssl_extra
2024-12-05 17:08:59 -07:00
David Garske
56ed6762d8
Expose compatibility get_verify functions with openssl_extra.
2024-12-05 12:10:51 -08:00
JacobBarthelmeh
1bfbdb6c7f
Merge pull request #8257 from dgarske/settings_h
...
Fix issue with wc_lms_impl.c or wc_lms not including settings.h
2024-12-05 11:43:43 -07:00
David Garske
1e9607b65e
Fixes for ML-DSA and LMS cast warnings and spelling errors.
2024-12-05 08:34:58 -08:00
JacobBarthelmeh
aa32027c26
Merge pull request #8236 from philljj/zephyr_thread_type
...
wc_port: change zephyr struct k_thread tid member to pointer.
2024-12-05 09:29:30 -07:00
David Garske
19b486e1f7
Fix issue with wc_lms_impl.c or wc_lms not including settings.h. Caused issue enabling LMS from user_settings.h.
2024-12-05 08:15:11 -08:00
Anthony Hu
ab384ee945
wolfSSL_CTX_set_tlsext_use_srtp() should return 1 on failure and 0 upon success.
...
Same with wolfSSL_set_tlsext_use_srtp().
See https://docs.openssl.org/1.1.1/man3/SSL_CTX_set_tlsext_use_srtp/
2024-12-05 10:40:40 -05:00
David Garske
bbf1a86c45
Merge pull request #8238 from anhu/dsa_win
...
build dsa in visual studio
2024-12-04 16:00:35 -08:00
JacobBarthelmeh
bdbaa525c8
Merge pull request #8248 from lealem47/comp_key_fips
...
Fix for Compressed Keys with FIPS
2024-12-04 13:51:06 -07:00
Colton Willey
c192cbabe8
Free x509 on fail to push
2024-12-04 10:33:58 -08:00
Daniel Pouzzner
35e50742db
Merge pull request #8249 from julek-wolfssl/sessionIDSz-fix
...
Add size checks to sessionID
2024-12-04 10:06:25 -06:00
Juliusz Sosinowicz
8ff79dc26e
Add size checks to sessionID
2024-12-04 11:56:16 +01:00
Lealem Amedie
3476425967
Fix for Compressed Keys with FIPS
2024-12-03 14:56:30 -07:00
David Garske
f7a55c6e76
Merge pull request #8247 from bandi13/fixEspressifTests
...
Fix test environment
2024-12-03 13:09:42 -08:00
Andras Fekete
03ece60fe3
Fix test environment
2024-12-03 15:13:53 -05:00
David Garske
fa6df90518
Merge pull request #8246 from douzzer/20241203-wolfSSL_CTX_flush_sessions-sessionIDSz
...
20241203-wolfSSL_CTX_flush_sessions-sessionIDSz
2024-12-03 11:26:15 -08:00
Colton Willey
c5acceca5d
Dont use specific free function
2024-12-03 09:55:43 -08:00
Colton Willey
20e8ecec75
Merge branch 'master' of github.com:ColtonWilley/wolfssl into x509_store_add_cert_ref_count
2024-12-03 09:52:34 -08:00
Daniel Pouzzner
547cdeac11
src/ssl_sess.c: in wolfSSL_CTX_flush_sessions(), add missing check of s->sessionIDSz, similar to the fix to TlsSessionCacheGetAndLock() in #8182 ( ef67b1c06a). also, add missing macro to .wolfssl_known_macro_extras.
2024-12-03 11:38:58 -06:00
Colton Willey
5684e56e0e
Always keep original x509 pointer with proper refcounts even for self signed trusted CA
2024-12-02 12:15:33 -08:00
JacobBarthelmeh
42afede3fc
Merge pull request #8235 from dgarske/fix_sp_rsa_publiconly
...
Fixes for building with SP RSA small and RSA Public only
2024-12-02 10:39:08 -07:00
JacobBarthelmeh
015d47b9cd
Merge pull request #8231 from LinuxJedi/STM32MP13
...
Add STM32MP13 HAL support for more SHA types
2024-12-02 10:18:38 -07:00
David Garske
ade917a977
Merge pull request #8241 from LinuxJedi/STM32MP13-Cube
...
Add STM32MP13 to Cube IDE
2024-11-29 08:37:02 -08:00
Andrew Hutchings
fbdb34a6e0
Add STM32MP13 to Cube IDE
2024-11-29 11:35:38 +00:00
Anthony Hu
3737c68797
build dsa in visual studio
2024-11-28 13:11:14 -05:00
David Garske
cf450a3f37
Fix STM32 example broken in #8143 .
2024-11-27 14:06:20 -08:00
jordan
a18f71c27b
wc_port: change zephyr struct k_thread tid member to pointer.
2024-11-27 16:05:48 -06:00
David Garske
9bec6da2ff
Merge pull request #8213 from JacobBarthelmeh/compat
...
adjustments to x509.h macro list
2024-11-27 13:35:14 -08:00
David Garske
57e1bf9fba
Fixes for building with SP RSA small and RSA Public only. ZD 18996
2024-11-27 13:26:45 -08:00
Colton Willey
c5df3cb6b6
Use proper ref count handling when adding to x509 store
2024-11-27 10:38:32 -08:00
JacobBarthelmeh
fbaabbe2e9
Merge pull request #8230 from douzzer/20241126-FIPS-OPENSSL_COEXIST
...
20241126-FIPS-OPENSSL_COEXIST
2024-11-27 11:33:06 -07:00
Andrew Hutchings
f15dbb9110
Add STM32MP13 HAL support for more SHA types
...
This adds STM32 HAL support for:
* SHA384
* SHA512 (with -224 and -256)
* SHA3 (all variants apart from SHAKE)
The partial FIFO block calculations have been adjusted based in the
STM32 code to support the larger hash sizes.
This should work with other chips such as the STM32U5xx, but is not
enabled for that yet.
2024-11-27 15:04:45 +00:00
Juliusz Sosinowicz
e9a4f7de5f
Merge pull request #8226 from ColtonWilley/x509_store_fix_get_objects
...
Fix wolfSSL_X509_STORE_get0_objects to handle no CA
2024-11-27 10:29:06 +01:00
Daniel Pouzzner
b65d3fff56
fixes for OPENSSL_COEXIST with FIPS and with/without TEST_OPENSSL_COEXIST.
2024-11-26 19:38:32 -06:00
JacobBarthelmeh
5e13fc2c84
Merge pull request #7410 from SparkiDev/sp_arm_big_endian
...
SP: big-endian support
2024-11-26 17:05:53 -07:00
JacobBarthelmeh
d620e937f0
Merge pull request #8229 from bigbrett/pqc-macro-protection-quickfix
...
PQC macro protection quickfixes
2024-11-26 17:02:17 -07:00
András Fekete
e7d801e8d0
Merge pull request #8228 from douzzer/20241126-WC_NO_COMPAT_AES_BLOCK_SIZE
...
20241126-WC_NO_COMPAT_AES_BLOCK_SIZE
2024-11-26 15:48:41 -05:00
JacobBarthelmeh
70d595478c
Merge pull request #8227 from douzzer/20241125-linuxkm-aarch64-pie
...
20241125-linuxkm-aarch64-pie
2024-11-26 13:31:01 -07:00
Brett Nicholas
1283325f65
wolfhsm-mldsa-fixes
2024-11-26 12:26:01 -08:00
Daniel Pouzzner
c6df620f81
wolfssl/wolfcrypt/aes.h: #define WC_NO_COMPAT_AES_BLOCK_SIZE in OPENSSL_COEXIST builds. see comment in source code with usage instructions.
2024-11-26 13:09:39 -06:00
David Garske
29dc0f5d0b
Merge pull request #8223 from LinuxJedi/STM32MP1
...
Initial support for STM32MP13 HAL
2024-11-26 09:34:04 -08:00
Andrew Hutchings
5d0ee8c9f3
Initial support for STM32MP13 HAL
...
This adds support for the STM32MP13 HAL, tested on the STM32MP135F MPU.
Using the HAL this modifies our previous RNG, AES-CBC, AES-GCM, HASH,
ECDSA and DES3 ST HAL acceleration to work with the MPU. It also works
around bugs found in the AES-GCM code of the HAL.
The HAL does not appear to have support for MD5 HASH at the moment, so
this has been given a flag to disable it on this MPU.
2024-11-26 14:15:57 +00:00
Daniel Pouzzner
7dcec3e62f
linuxkm: work around aarch64 dependency on alt_cb_patch_nops for enable-linuxkm-pie (FIPS support).
2024-11-26 00:12:29 -06:00
JacobBarthelmeh
ea8c7c8322
Merge pull request #8214 from bandi13/fixDockerWarnings
...
Use proper capitalization
2024-11-25 16:43:24 -07:00
JacobBarthelmeh
02432990dc
Merge pull request #8210 from night1rider/devcrypto-authtag-error
...
/dev/crypto auth error fix/adjustment for benchmark
2024-11-25 16:42:58 -07:00
Colton Willey
5460ba815b
Fix wolfSSL_X509_STORE_get0_objects to handle case where no CA has been loaded
2024-11-25 14:51:29 -08:00
David Garske
71abfa3b15
Merge pull request #8216 from douzzer/20241122-opensslcoexist-expansion
...
20241122-opensslcoexist-expansion
2024-11-25 14:22:03 -08:00
night1rider
02e6ec0c86
devcrypto auth error fix/adjustment
2024-11-25 14:43:12 -07:00
Daniel Pouzzner
fc7ba562d7
Merge pull request #8215 from kaleb-himes/SRTP-KDF-SCRIPT
...
Add SRTP-KDF (v6.0.0) to checkout scipt
2024-11-25 13:07:05 -06:00
kaleb-himes
8fbff480d7
Pickup asm changes since 5.7.4 release
2024-11-25 10:58:04 -07:00
David Garske
40154e18ab
Merge pull request #8219 from gojimmypi/pr-arduino-5.7.4
...
Update Arduino files for wolfssl 5.7.4
2024-11-25 09:37:21 -08:00
gojimmypi
560d89ed44
Update Arduino files for wolfssl 5.7.4
2024-11-23 13:26:46 -08:00
Daniel Pouzzner
bfeb0ad48e
expand opensslcoexist to all low level crypto APIs.
2024-11-22 19:27:56 -06:00
kaleb-himes
6791d3f759
Add SRTP-KDF (v6.0.0) to checkout scipt
2024-11-22 14:01:24 -07:00
Andras Fekete
93f865f2d4
Use proper capitalization
2024-11-22 15:39:57 -05:00
JacobBarthelmeh
033a2a08e9
Merge pull request #8212 from bandi13/fixTestFailure
...
Fix Renesas test
2024-11-22 10:42:21 -07:00
JacobBarthelmeh
2b11bd40b3
adjustments to x509.h macro list
2024-11-22 10:40:14 -07:00
JacobBarthelmeh
6dd00abb74
Merge pull request #7771 from aidangarske/InitSuites_Orderadj
...
`InitSuites` changes to order making `BUILD_TLS_AES_256_GCM_SHA384` be prioritized over `BUILD_TLS_AES_128_GCM_SHA256`
2024-11-22 10:15:32 -07:00
JacobBarthelmeh
c5d7dc3df6
Merge pull request #8211 from douzzer/20241121-fixes
...
20241121-fixes
2024-11-22 09:49:59 -07:00
David Garske
401a64d112
Improve stdarg.h around uses of var_arg. Cleanup warning for XFREE/XMALLOC redef.
2024-11-22 08:11:32 -08:00
Andras Fekete
942c3a07ee
Fix Renesas test
...
In PR #8182 this line was accidentally wrapped in `#ifdef OPENSSL_EXTRA`
2024-11-22 09:57:55 -05:00
Daniel Pouzzner
d85c108952
wolfssl/wolfcrypt/error-crypt.h, wolfcrypt/src/error.c: add WC_FAILURE ("wolfCrypt generic failure") with value -1, for traceable error return of -1 in wolfCrypt.
...
configure.ac: add OPENSSL_EXTRA to --enable-wolfsentry.
linuxkm/linuxkm_wc_port.h, linuxkm/module_hooks.c, wolfssl/ssl.h: accommodate backward dependencies for wolfSSL_X509_NAME_add_entry_by_NID, wolfSSL_X509_NAME_free, and wolfSSL_X509_NAME_new_ex.
linuxkm/lkcapi_glue.c: if CONFIG_CRYPTO_MANAGER, assert match of CONFIG_CRYPTO_FIPS and HAVE_FIPS.
src/ssl_crypto.c, wolfcrypt/src/wc_lms.c, wolfcrypt/src/wc_lms_impl.c, wolfcrypt/src/wc_xmss.c, wolfcrypt/test/test.c: add missing casts for XMALLOC()s.
src/ssl_crypto.c: in wolfSSL_AES_decrypt(), fix gate for wc_AesDecryptDirect() return type.
wolfcrypt/test/test.c: smallstack refactor in test_dilithium_decode_level().
tests/api.c: fix uninited vars and "embedding a directive within macro arguments is not portable" in test_wc_dilithium_der().
2024-11-21 21:59:26 -06:00
Daniel Pouzzner
92f587c84f
Merge pull request #8209 from gasbytes/patch-wc-no-err-trace
...
Adding missing checks missing initialization of sp_int/mp_int
2024-11-21 18:34:11 -06:00
JacobBarthelmeh
03bafdfa36
Merge pull request #8208 from dgarske/engine_compat
...
Fixes from compatibility header decoupling (make install)
2024-11-21 16:40:15 -07:00
Reda Chouk
378519d7fb
Adding missing checks missing initialization of sp_int/mp_int initialization (
...
in case of MEMORY_E).
removed printf (added for previous debugging)
2024-11-21 23:55:34 +01:00
David Garske
3444d5c526
Fixes from compatibility header decoupling PR #8182 . Fixes issue with wolfEngine and wolfProvider. Change behavior for openssl compatibility headers to be installed unless --enable-opensslextra=noinstall is used. Removed dependency on X509 small with SESSION_CERTS, KEEP_PEER_CERTS and KEEP_OUR_CERT.
2024-11-21 12:09:57 -08:00
David Garske
39d4832b0b
Merge pull request #8207 from bigbrett/dilithium-nightly-fixes
...
dilithium fixes for FIPS 204 draft mode
2024-11-21 11:41:52 -08:00
Brett Nicholas
cceeb776f7
gate dilithium OID autodetection on FIPS 204 draft mode
2024-11-21 09:38:11 -08:00
Brett Nicholas
30f372ce16
add autogenerated error trace headers to gitignore
2024-11-21 09:38:11 -08:00
Brett Nicholas
e31b15875b
fix buffer overflow due to uninitialized idx variable
2024-11-21 09:38:11 -08:00
JacobBarthelmeh
04932dd97d
Merge pull request #8206 from dgarske/rx_tsip
...
Fixes for RSA TSIP RSA Sign/Verify
2024-11-21 09:30:48 -07:00
Daniel Pouzzner
2710b57df8
Merge pull request #8204 from JacobBarthelmeh/socket
...
change optval type to match system
2024-11-21 09:57:10 -06:00
JacobBarthelmeh
c06f65a8ac
Merge pull request #8182 from dgarske/no_compat_headers
...
Support for building without wolfssl/openssl header files
2024-11-20 21:33:18 -07:00
David Garske
6be70f9230
Fix for size increase on X509 small. Fix for CRL test with NO_RSA.
2024-11-20 15:54:02 -08:00
David Garske
96a0619d70
Enable compat layer with HAVE_WEBSERVER (--enable-webserver).
2024-11-20 14:24:11 -08:00
David Garske
c5e43280b9
Fix for RX TSIP AES GCM 128 unit test resultP/C sizes causing failure.
2024-11-20 13:48:05 -08:00
David Garske
7bf0533c48
Fix for building with HAVE_SECRET_CALLBACK only.
2024-11-20 13:33:10 -08:00
David Garske
d109f38cbd
Fixes for RSA TSIP RSA Sign/Verify. Tested on RX72N EnvisionKit. Added THREADX threading support.
...
```
Start wolf tsip crypt Test
simple crypt test by using TSIP
sha_test() passed
sha256_test() passed
tsip_aes_cbc_test() passed
tsip_aes256_test() passed
tsip_rsa_test(2048) passed
tsip_rsa_SignVerify_test(2048) passed
End wolf tsip crypt Test
```
2024-11-20 13:08:26 -08:00
JacobBarthelmeh
be70bea687
Merge pull request #8202 from LinuxJedi/fix-cryptodev-debug
...
Fix cryptodev debug output
2024-11-20 14:00:05 -07:00
David Garske
ef67b1c06a
Support for building without wolfssl/openssl header files. ZD 18465
...
* Fix for `TlsSessionCacheGetAndLock` that was not checking the sessionIDSz, so could return a pointer to an invalid session (if 0's). Resolves issue with `test_wolfSSL_CTX_sess_set_remove_cb` test.
* Fix cast warning with `HAVE_EX_DATA` in Windows VS.
* Fix openssl_extra without PKCS12.
* Refactor the EX data crypto and session API's to gate on `HAVE_EX_DATA_CRYPTO`.
* Grouped the EX data API's in ssl.h
* Moved API's in ssl.h to separate the compatibility ones from ours.
2024-11-20 12:32:32 -08:00
JacobBarthelmeh
b3e8fa7922
change optval type to match system
2024-11-20 09:34:11 -07:00
Andrew Hutchings
f5e6e17c7c
Fix cryptodev debug output
...
Cryptodev has two sections for the session info struct, cipher and hash.
Our debug mode was using hash for the output even if we were using
cipher, so would output random data. Simple 'if' statement to do the
correct thing.
2024-11-20 06:41:58 +00:00
JacobBarthelmeh
42825e82d2
Merge pull request #8200 from anhu/crl-orig
...
Fix for github issue 8198
2024-11-19 09:35:59 -07:00
kaleb-himes
fc1390d0aa
fix overlong line warning in Jenkins
2024-11-19 09:56:19 -06:00
David Garske
18f52b2573
Merge pull request #8177 from bigbrett/dilithium-get-algo-from-der
...
ML-DSA/Dilithium: obtain security level from DER when decoding
2024-11-19 07:32:39 -08:00
David Garske
261ddc13ad
Merge pull request #8006 from ColtonWilley/crl_update_cb
...
CRL improvements and update callback
2024-11-18 20:11:37 -08:00
Brett Nicholas
26d3b00a9c
added DER size macros to libOQS build
2024-11-18 17:53:12 -07:00
Brett Nicholas
48dcbe9caf
fix typo in comment
2024-11-18 16:50:35 -07:00
Brett Nicholas
9815fcd3ea
make inOutKeyType parameter mandatory for DecodeAsymKey_Assign
2024-11-18 16:46:10 -07:00
Brett Nicholas
d50fb63071
add macros for dilithium DER export buffer sizes
2024-11-18 16:14:26 -07:00
Brett Nicholas
63deea57e0
properly protect test.c calls to dilithium public/private API
2024-11-18 15:47:00 -07:00
Anthony Hu
237bb24f87
Fix for github issue 8198
2024-11-18 17:33:13 -05:00
aidan garske
43cea3e964
fix xmemset
2024-11-18 14:27:33 -08:00
aidan garske
6625d90f7f
reverted xmemset changes already done
2024-11-18 14:20:14 -08:00
aidan garske
337a34246e
xmemset fix for init suites changes
2024-11-18 13:54:38 -08:00
Colton Willey
d65c17b7ad
Update variable name from new to avoid g++ name clash
2024-11-18 11:16:39 -08:00
kaleb-himes
9851e5d801
Restore header license
2024-11-18 12:10:02 -06:00
aidan garske
b79423fae9
Merge remote-tracking branch 'origin/master' into InitSuites_Orderadj
2024-11-18 10:07:10 -08:00
Colton Willey
55be5035a0
Merge branch 'master' of github.com:ColtonWilley/wolfssl into crl_update_cb
2024-11-18 09:52:51 -08:00
David Garske
c111bb87c9
Merge pull request #8196 from SparkiDev/pqc_kem_priv_key_fix
...
KeyShareEntry: include private key fields for KYBER
2024-11-18 09:46:08 -08:00
David Garske
5dabeb590c
Merge pull request #8192 from bandi13/fixSocat
...
Simple fix for 1.8.0.0 socat regressions
2024-11-18 07:26:15 -08:00
gojimmypi
5d86031f57
Initialize vars & change types to appease Windows/VS
2024-11-17 17:50:17 -08:00
Sean Parkinson
10e8f6887e
SP ARM: big-endian support
...
Handle reading and writing from big-endian byte array when compiling for
big endian.
Rework little endian to be more effiecient too.
2024-11-18 10:29:04 +10:00
Sean Parkinson
5d61ca94c0
KeyShareEntry: include private key fields for KYBER
...
Originallt HAVE_PQC and then changed to HAVE_FALCON and HAVE_DILITHIUM.
The KEM PQC algorithm is actually KYBER.
2024-11-18 08:29:16 +10:00
David Garske
5afa0566b4
Merge pull request #8195 from douzzer/20241116-fixes
...
20241116-fixes
2024-11-17 09:12:38 -08:00
Daniel Pouzzner
18cc3e0c92
add .wolfssl_known_macro_extras;
...
src/wolfio.c: #include <errno.h> if necessary;
wolfcrypt/src/asn.c: gate WOLFSSL_MSG_EX() uses on defined(DEBUG_WOLFSSL), for pedantic C89 compatibility (no variadic macros);
wolfssl/wolfcrypt/wc_port.h: refine setup for XFENCE().
2024-11-16 18:23:11 -06:00
Daniel Pouzzner
ae0d73d9fd
Merge pull request #8122 from miyazakh/tsip_rsa_private_enc
...
Implement TSIP RSA Public Enc/Private Dec
2024-11-16 16:12:51 -06:00
Daniel Pouzzner
ff680994ba
Merge pull request #8146 from julek-wolfssl/dtls13-ooo-app-data
...
DTLS 1.3: Don't error out on app data before finishing handshake
2024-11-16 14:56:21 -06:00
Daniel Pouzzner
49393eca3c
Merge pull request #8060 from miyazakh/qt_jenkins_failure
...
Not add a cert to CA cache if it doesn't set "CA:TRUE" as basic constraints
2024-11-16 13:38:41 -06:00
Daniel Pouzzner
40148d3c0e
Merge pull request #8170 from kaleb-himes/OE8-sync
...
OS_Seed declarations with legacy compilers using correct header tags
2024-11-16 12:03:11 -06:00
Daniel Pouzzner
18a72fb38c
Merge pull request #7896 from kareem-wolfssl/wolfIoLogging
...
Log error code in TranslateIoReturnCode.
2024-11-16 11:12:02 -06:00
David Garske
649b78f460
Merge pull request #8193 from douzzer/20241115-macro-fixes
...
20241115-macro-fixes
2024-11-15 15:58:57 -08:00
David Garske
ada922be00
Merge pull request #8166 from philljj/fix_holder_entityname
...
acert: fix holder entityName parsing.
2024-11-15 14:49:00 -08:00
Andras Fekete
962b101db9
Add flaky tests to the exclusion list
2024-11-15 16:34:51 -05:00
Daniel Pouzzner
ebfde75d91
fixes for misspelled/malformed macro names, and add missing BUILD_AESCCM setup in wolfssl/internal.h
2024-11-15 15:33:51 -06:00
jordan
c71fdc3ca2
acert: review cleanup.
2024-11-15 13:48:17 -06:00
David Garske
c33d97b1ab
Merge pull request #8187 from douzzer/20241114-wolfSSL_CTX_UnloadIntermediateCerts-thread-safety
...
20241114-wolfSSL_CTX_UnloadIntermediateCerts-thread-safety
2024-11-15 11:35:45 -08:00
Brett Nicholas
07e2715f0c
update test in api.c to handle new dilithium security level DER parsing
2024-11-15 11:59:17 -07:00
Daniel Pouzzner
a95b759ffa
peer review for #8187 and unrelated bug fixes:
...
return error code from wolfSSL_RefWithMutexUnlock() to expose result to caller;
fix endianness bug in src/x509.c:wolfSSL_X509_add_ext() (fixes failing test_wolfSSL_X509_add_ext on BE targets);
fix possible file handle leak in tests/api.c:test_wolfSSL_d2i_X509_REQ() (reported by clang-tidy);
in wolfssl/ssl.h, define CONST_NUM_ERR_WOLFSSL_SUCCESS, so that WOLFSSL_SUCCESS can be benignly miswrapped in WC_NO_ERR_TRACE().
2024-11-15 12:52:50 -06:00
Daniel Pouzzner
595f55eceb
add struct wolfSSL_RefWithMutex, wolfSSL_RefWithMutexLock, and wolfSSL_RefWithMutexUnlock, and change WOLFSSL_CTX.ref from wolfSSL_Ref to wolfSSL_RefWithMutex.
...
in in wc_port.c, rename mutexful implementations of wolfSSL_Ref*() to wolfSSL_RefWithMutex*(), and build them even if defined(WOLFSSL_ATOMIC_OPS).
refactor wolfSSL_CTX_UnloadIntermediateCerts() to wrap the refcount check and deallocation with wolfSSL_RefWithMutexLock()...wolfSSL_RefWithMutexUnlock().
move port-specific setup for WARN_UNUSED_RESULT, WC_MAYBE_UNUSED, and WC_INLINE, from types.h to wc_port.h, to make them usable by port-specific definitions later in wc_port.h.
when defined(SINGLE_THREADED) and !defined(WOLFSSL_NO_ATOMICS), typedef int wolfSSL_Atomic_Int, so that access to wolfSSL_Atomic_Ints in SINGLE_THREADED builds is easy.
refactor fallback definitions of wolfSSL_Atomic_Int_FetchAdd and wolfSSL_Atomic_Int_FetchSub as WC_INLINE functions to avoid -Wunused-result.
2024-11-15 12:35:41 -06:00
Andras Fekete
3268df33f2
Simple fix for 1.8.0.0 socat regressions
...
Future versions probably won't need this.
2024-11-15 13:12:48 -05:00
Kareem
bb82be3911
Log error code in TranslateIoReturnCode.
2024-11-15 11:00:25 -07:00
David Garske
e1116e8e6b
Merge pull request #8161 from ColtonWilley/update_ssl_doxy
...
Update doxygen to use proper types in sample code
2024-11-15 09:43:38 -08:00
David Garske
3674980387
Merge pull request #8173 from kojo1/man
...
add API doc: wc_ecc_set_curve
2024-11-15 09:42:12 -08:00
jordan
622fc70d1e
acert: fix holder entityName parsing, light cleanup, better testing.
2024-11-15 11:38:19 -06:00
Brett Nicholas
2207791aab
removed DecodeAsymKeyXXX_Assign_ex function, functionality now included in original _Assign function
2024-11-15 10:25:10 -07:00
David Garske
55d2012139
Merge pull request #8189 from gojimmypi/pr-espressif-setup
...
remove trailing exit code
2024-11-15 08:37:20 -08:00
David Garske
5f06a7f732
Merge pull request #8188 from douzzer/20241114-wc_mp_sign_t
...
20241114-wc_mp_sign_t
2024-11-15 08:36:42 -08:00
David Garske
3b8373226a
Merge pull request #8191 from bandi13/fixTest
...
Fix missing cast
2024-11-15 08:35:55 -08:00
Andras Fekete
d99a1c6a13
Fix another compilation issue
...
In file included from ./wolfssl/error-ssl.h:27,
from ./wolfssl/ssl.h:35,
from ./wolfssl/internal.h:28,
from src/ssl.c:36:
./src/x509_str.c: In function 'int X509StoreLoadCertBuffer(WOLFSSL_X509_STORE*, byte*, word32, int)':
./wolfssl/wolfcrypt/error-crypt.h:336:37: error: 'CONST_NUM_ERR_WOLFSSL_SUCCESS' was not declared in this scope; did you mean 'CONST_NUM_ERR_WOLFSSL_UNKNOWN'?
336 | #define WC_NO_ERR_TRACE(label) (CONST_NUM_ERR_ ## label)
| ^~~~~~~~~~~~~~
./src/x509_str.c:1456:15: note: in expansion of macro 'WC_NO_ERR_TRACE'
1456 | int ret = WC_NO_ERR_TRACE(WOLFSSL_SUCCESS);
| ^~~~~~~~~~~~~~~
2024-11-15 10:12:13 -05:00
Andras Fekete
ca8b465dbf
Fix missing cast
...
Introduced in PR#8176.
2024-11-15 09:17:41 -05:00
gojimmypi
4cce3db0d5
remove trailing exit code
2024-11-15 06:05:04 +01:00
David Garske
e22d17c09f
Merge pull request #8185 from SparkiDev/kyber_fixes_4
...
Kyber: Fix wolfSSL_get_curve_name()
2024-11-14 17:57:24 -08:00
David Garske
fcfd3be160
Merge pull request #8186 from SparkiDev/tfm_mask_cast
...
TFM: explicit cast of -1 to fp_digit
2024-11-14 17:57:00 -08:00
David Garske
c06b5fadc1
Merge pull request #8180 from JacobBarthelmeh/staticmemory
...
wc_UnloadStaticMemory should be used to free mutex
2024-11-14 17:54:56 -08:00
David Garske
21bfcaf666
Merge pull request #8136 from anhu/csr_version
...
Fix for setting wrong version in CSRs.
2024-11-14 17:52:58 -08:00
David Garske
54bdb39454
Merge pull request #8176 from SparkiDev/x509_coverage
...
X509: improve testing coverage
2024-11-14 17:49:33 -08:00
David Garske
8b1e9211b1
Merge pull request #8149 from SparkiDev/asn_getshortint
...
Make GetShortInt available with WOLFSSL_ASN_EXTRA
2024-11-14 17:47:11 -08:00
David Garske
8fe7d1076d
Merge pull request #8184 from douzzer/20241113-WC_THREADSHARED
...
20241113-WC_THREADSHARED
2024-11-14 17:46:19 -08:00
Daniel Pouzzner
469c410393
src/sniffer.c: remove build-time assert on HAVE_THREAD_LS || SINGLE_THREADED, as it breaks existing build tests. fix more later.
2024-11-14 18:22:42 -06:00
Daniel Pouzzner
154c5f0b56
rename mp_sign_t to wc_mp_sign_t and mp_size_t to wc_mp_size_t.
2024-11-14 18:14:45 -06:00
Daniel Pouzzner
4ad0dce84e
src/sniffer.c: revert refactor pending proper fixes.
2024-11-14 18:00:52 -06:00
Daniel Pouzzner
dd9f6378cb
rename WOLFSSL_GLOBAL to WC_THREADSHARED, and refactor mutex handling in src/sniffer.c for consistency and correctness, also adding gating on !SINGLE_THREADED for efficiency;
...
add wc_static_assert in wolfcrypt/test/test.h to assure that WC_TEST_RET_ENC() can correctly handle all error codes.
2024-11-14 16:35:04 -06:00
Sean Parkinson
9d8a3cc352
TFM: explicit cast of -1 to fp_digit
...
When -1 is needed as an fp_digit, as a mask. cast to fp_digit.
2024-11-15 08:25:44 +10:00
Sean Parkinson
b98af853f2
Kyber: Fix wolfSSL_get_curve_name()
...
Fix protection around Kyber hybrid strings when compiling for original
with wolfSSL implementation.
2024-11-15 08:17:02 +10:00
Daniel Pouzzner
6af54d3de2
Merge pull request #8183 from SparkiDev/kyber_fixes_3
...
Kyber: fixes to configure and wolfSSL_get_curve_name
2024-11-14 12:47:09 -06:00
Sean Parkinson
886f5b0a5b
Kyber: fixes to configure and wolfSSL_get_curve_name
...
Remote original-only option for kyber in configure.ac.
Default is ML-KEM only.
original is Kyber only.
ml-lem is ML-KEM.
to have both: all,original,ml-kem.
Use WOLFSSL_NO_ML_KEM* instead of WOLFSSL_WC_ML_KEM_* which requires the
inclusion of kyber headers.
2024-11-14 16:25:41 +10:00
Brett Nicholas
f672105d55
- Move automatic OID detection from Dilithium code into ASN code
2024-11-13 15:31:59 -07:00
David Garske
c8f56f035f
Merge pull request #8169 from douzzer/20241108-WOLFSSL_CLEANUP_THREADSAFE
...
20241108-WOLFSSL_CLEANUP_THREADSAFE
2024-11-13 12:45:33 -08:00
Daniel Pouzzner
0ebd86d668
add second wolfCrypt error code span, and add DEADLOCK_AVERTED_E.
2024-11-13 13:01:00 -06:00
JacobBarthelmeh
f74e73e8ce
wc_UnloadStaticMemory should be used to free mutex
2024-11-13 11:51:53 -07:00
Daniel Pouzzner
524f0f5799
peer review on "WOLFSSL_CLEANUP_THREADSAFE":
...
* add WOLFSSL_ATOMIC_INITIALIZER() to wc_port.h;
* rename feature macro to WOLFSSL_CLEANUP_THREADSAFE_BY_ATOMIC_OPS for clarity;
* remove spin lock logic in wolfSSL_Init() and instead return DEADLOCK_AVERTED_E on contended initialization;
* unless WOLFSSL_CLEANUP_THREADSAFE_BY_ATOMIC_OPS is user-defined to 0, automatically enable it when appropriate.
2024-11-12 23:57:35 -06:00
Hideki Miyazaki
fdb889303a
fix qt unit test qsslcertificate
...
fix trusted peer cert cache
2024-11-13 08:38:51 +09:00
Daniel Pouzzner
b8aeaf4fa8
src/ssl.c: implement WOLFSSL_CLEANUP_THREADSAFE in wolfSSL_Init() / wolfSSL_Cleanup().
2024-11-12 17:37:45 -06:00
Sean Parkinson
86ad96ca29
X509: improve testing coverage
2024-11-13 09:10:22 +10:00
Brett Nicholas
6b1b6ece00
guard use of dilithium_key->params on WC implementation
2024-11-12 16:08:11 -07:00
Anthony Hu
b1ccbbc7fa
Addressing review comments from dgarske
2024-11-12 16:36:12 -05:00
Brett Nicholas
0e6ac11d15
- Add ability to obtain Dilithium security level (parameters) from a DER
...
encoded key based on the algorithm type OID
- Add test coverage for decoding DER keys without level specified
2024-11-12 14:19:12 -07:00
Juliusz Sosinowicz
cf80eb8788
DTLS 1.3: Don't error out on app data before finishing handshake
...
Check epoch for early data
2024-11-12 12:19:02 +01:00
Daniel Pouzzner
878cf3afaa
Merge pull request #8155 from JacobBarthelmeh/x509_req
...
fix for memory leak due to missed WOLFSSL_GENERAL_NAME capability cha…
2024-11-11 23:03:52 -06:00
Daniel Pouzzner
c5f1acf960
Merge pull request #8172 from SparkiDev/kyber_bench_fix
...
Kyber benchmark: allow ML-KEM and Kyber
2024-11-11 23:00:51 -06:00
JacobBarthelmeh
ce935fddad
cast return of XMALLOC
2024-11-11 09:57:33 -07:00
JacobBarthelmeh
4996aed166
Merge pull request #8117 from rizlik/static_mem_fix_types
...
memory: fix types in wc_LoadStaticMemory_ex()
2024-11-11 09:48:25 -07:00
Takashi Kojo
718b3d46b2
add API doc: wc_ecc_set_curve
2024-11-11 16:38:38 +09:00
Sean Parkinson
cadafffb71
Kyber benchmark: allow ML-KEM and Kyber
...
Fix benchmark to use ML-KEM/Kyber depending on how code is built.
2024-11-11 10:34:32 +10:00
Daniel Pouzzner
c08bbf0333
Merge pull request #8168 from bandi13/fixCMakeTests
...
Use only one or the other
2024-11-09 00:43:15 -06:00
Daniel Pouzzner
9361603d8b
Merge pull request #8071 from JacobBarthelmeh/static
...
display heap pointer with debug enabled
2024-11-09 00:20:32 -06:00
Daniel Pouzzner
165b4afbeb
Merge pull request #8143 from SparkiDev/kyber_plus_mlkem
...
Kyber/ML-KEM: make both available
2024-11-09 00:09:51 -06:00
Daniel Pouzzner
23f46a1c3e
Merge pull request #8140 from dgarske/wildcard
...
Fix for building sources (wildcard *.c). Add macro guard on new files.
2024-11-08 23:36:00 -06:00
Hideki Miyazaki
2831eb3ca7
Fix TSIP TLS. Call rsa_pad crypt cb in the case of TSIP
2024-11-09 14:23:57 +09:00
kaleb-himes
309c0a8218
OS_Seed declarations with legacy compilers using correct header tags
2024-11-08 15:10:50 -07:00
kaleb-himes
47557279a2
Updates from customer feedback
2024-11-08 15:49:01 -06:00
Andras Fekete
a295aef0b2
Use only one or the other
2024-11-08 14:34:16 -05:00
David Garske
c868c3ecff
Merge pull request #8164 from douzzer/20241105-c89-expansion-etc
...
20241105-c89-expansion-etc
2024-11-08 10:15:00 -08:00
Daniel Pouzzner
469b9efc9e
wolfssl/test.h: revert heap shim refactor -- api.c relies on these being native heap allocations.
2024-11-08 01:03:44 -06:00
Daniel Pouzzner
aa18bbca55
assorted cleanups and refactors for C89 conformance, codespell and check-source-text, and consistent heap shim usage.
...
.github/workflows/codespell.yml: remove */README_jp.txt from "skip" list.
IDE/Renesas/cs+/Projects/t4_demo/README_jp.txt: convert from SHIFT_JIS to UTF-8.
cmake/options.h.in: use "#cmakedefine HAVE_PTHREAD 1" to avoid conflict with config.h.
configure.ac: add --enable-c89, and remove !ENABLED_OPENSSLEXTRA dependency from AM_CONDITIONAL([BUILD_CRYPTONLY],...).
wolfcrypt/src/asn.c: refactor SetOthername() for efficiency, and add PRAGMA_GCC to suppress false positive -Wstringop-overflow associated with -fstack-protector.
wolfssl/wolfcrypt/rsa.h: add WC_ prefixes to RSA_PKCS1_PADDING_SIZE and RSA_PKCS1_OAEP_PADDING_SIZE, and define unprefixed compat aliases only if !OPENSSL_COEXIST.
wolfssl/wolfcrypt/types.h:
#ifdef WOLF_C89, #define WC_BITFIELD unsigned;
enhance WOLF_ENUM_DUMMY_LAST_ELEMENT() to include the line number, to construct unique labels given a per-filename argument, to accommodate anonymous enums.
examples/asn1/asn1.c:
examples/client/client.c:
examples/pem/pem.c:
examples/server/server.c:
wolfcrypt/src/sp_dsp32.c:
wolfcrypt/src/wc_port.c:
wolfssl/test.h:
use XMALLOC/XREALLOC/XFREE consistently, not malloc/realloc/free.
wolfcrypt/benchmark/benchmark.c:
wolfcrypt/src/memory.c:
wolfcrypt/test/test.c:
wolfssl/wolfcrypt/mem_track.h:
wolfssl/wolfcrypt/settings.h:
wolfssl/wolfcrypt/types.h:
annotate intentional native heap access with "/* native heap */".
wolfcrypt/src/asn.c:
wolfssl/callbacks.h:
wolfssl/openssl/ec.h:
wolfssl/openssl/ssl.h:
wolfssl/wolfcrypt/hpke.h:
wolfssl/wolfcrypt/types.h:
fix enum trailing commas.
wolfssl/openssl/ec.h:
wolfssl/openssl/evp.h:
wolfssl/openssl/rsa.h:
wolfssl/openssl/ssl.h:
use WC_BITFIELD in bitfield elements, not byte or word16, to allow for pedantic C89 conformant builds.
wolfssl/openssl/ec.h:
wolfssl/openssl/evp.h:
wolfssl/openssl/pem.h:
wolfssl/openssl/ssl.h:
wolfssl/wolfcrypt/logging.h:
avoid variadic macros wherever possible, and where unavoidable, #ifdef WOLF_NO_VARIADIC_MACROS, define them with empty arg lists, rather than ..., to support Watcom compiler.
wolfssl/wolfcrypt/settings.h: if defined(__WATCOMC__), define WOLF_NO_VARIADIC_MACROS.
2024-11-07 22:36:24 -06:00
kaleb-himes
07a45ab8ef
OE8 NETOS 140-3 updates check-in
...
Update include.am
update printf declaration in benchmark.c
Sync with version used in optesting
fix the license headers
2024-11-07 17:04:32 -06:00
Maxim Ivanov
0319eb098d
CMAKE: look for pthreads when importing wolfSSL if required
...
All required dependencies of a package must also be found in the
package configuration file. Consumers of wolfSSL can't know
if it was built with or without threads support. This change
adds find_package(Threads) lookup in the file used for
find_package(wolfssl) if wolfSSL was built with threads support.
2024-11-07 21:42:11 +00:00
Colton Willey
dbec1b2b0d
Update doxygen to use proper types in sample code
2024-11-07 12:50:55 -08:00
David Garske
b648d35449
Merge pull request #8138 from JacobBarthelmeh/wolfclu_config
...
wolfCLU added support for PKCS7
2024-11-07 12:44:06 -08:00
David Garske
364cd107ff
Merge pull request #8151 from SparkiDev/test_fixes_3
...
Testing fixes
2024-11-07 12:43:12 -08:00
David Garske
79d9aab5bd
Merge pull request #8159 from philljj/spelling_cleanup
...
spelling: tiny cleanup.
2024-11-07 12:00:04 -08:00
David Garske
1061518876
Merge pull request #8153 from LinuxJedi/Pi-pico
...
Add support for Raspberry Pi Pico
2024-11-07 11:59:34 -08:00
Andrew Hutchings
1d2c78e3be
Add support for Raspberry Pi Pico
...
This adds improved support for the Raspberry Pi Pico range of
microcontrollers.
Benchmark now compiles, and added support for the RNG functions of the
Pico SDK. This gives a ~2x RNG performance improvement on the RP2040 and
over 3x improvement on the RP2350.
The accelerated SHA256 in the RP2350 unfortunately cannot be used with
wolfSSL.
2024-11-07 17:26:51 +00:00
jordan
b4e8e57b59
spelling: tiny cleanup.
2024-11-07 07:40:02 -06:00
JacobBarthelmeh
a896c16ebd
fix for memory leak due to missed WOLFSSL_GENERAL_NAME capability changes
2024-11-06 17:10:54 -07:00
Anthony Hu
0508151ddf
Quick fix
2024-11-06 16:07:18 -05:00
Daniel Pouzzner
c577ad78df
Merge pull request #8154 from bandi13/fipsCheckAddFlag
...
Ability to bypass './configure' as some tests/scripts run it anyway
2024-11-06 15:07:17 -06:00
Andras Fekete
cbf4f014cd
Fix false positive error on gcc 9.4.0
...
"error: ‘nameSz’ may be used uninitialized in this function", but it's not actually going to be used uninitialized.
2024-11-06 14:54:02 -05:00
David Garske
43879f961d
Fix RSA TSIP to return the actual cipher or plain length on success. Fix crypto callback to properly support PKCSv1.5 sign/verify and encrypt/decrypt based on padding info.
2024-11-06 10:37:03 -08:00
Andras Fekete
b4f0789ce5
Ability to bypass './configure' as some tests/scripts run it anyway
2024-11-06 08:39:23 -05:00
Sean Parkinson
256c6708e0
Testing fixes
...
Fix header inclusion: settings.h after options.h.
pkcs8_encode(): dh is not available if NO_DH is defined.
2024-11-06 15:23:49 +10:00
David Garske
3179a2ff00
Cleanup the import function declarations.
2024-11-05 14:14:25 -08:00
David Garske
02c2f445d9
Cleanup unused variables and function (void).
2024-11-05 09:45:01 -08:00
David Garske
6b02d7879a
Add public decrypt and private encrypt. Cleanups.
2024-11-05 09:24:00 -08:00
András Fekete
7e291992c0
Merge pull request #8150 from douzzer/20241104-fixes
...
20241104-fixes
2024-11-05 11:00:20 -05:00
Daniel Pouzzner
0f31f5bad9
codespell fixes.
2024-11-05 00:19:07 -06:00
Daniel Pouzzner
a540c6ade5
configure.ac: activate opensslextra for --enable-curl even if ENABLED_OPENSSLCOEXIST; tests/api.c: in test_wolfSSL_SESSION(), use WOLFSSL_SUCCESS, not SSL_SUCCESS, in HAVE_SESSION_TICKET span reachable in non-OPENSSL_EXTRA builds.
2024-11-05 00:15:18 -06:00
Daniel Pouzzner
8ecf064314
Merge pull request #8098 from dgarske/x86_notwindows_2
...
More fixes for building x86 in Visual Studio for non-windows OS
2024-11-05 00:13:13 -06:00
David Garske
92f7e91655
Merge pull request #8120 from SparkiDev/asn_templ_doc
...
ASN template documentation: adding basics for decoding
2024-11-04 15:25:18 -08:00
Sean Parkinson
36515e8daf
Make GetShortInt available with WOLFSSL_ASN_EXTRA
...
Customers may need to use GetShortInt when doing custom ASN.1 parsing.
Was only available when !NO_PWDBASED.
GetShortInt is still an internal API.
2024-11-05 08:46:34 +10:00
Daniel Pouzzner
95b47714d5
Merge pull request #8147 from bandi13/regenScripts
...
Regen scripts
2024-11-04 16:37:24 -06:00
David Garske
aad0f6e08d
Peer review feedback: Improve workaround for variadic macros and cast warnings.
2024-11-04 11:15:00 -08:00
Andras Fekete
4083afe353
Ignore file with non-UTF-8 characters
2024-11-04 13:56:07 -05:00
David Garske
9757aa0adf
Merge pull request #8113 from philljj/tiny_dilithium_fix
...
dilithium: expose wc_MlDsaKey_GetX functions as API.
2024-11-04 10:52:30 -08:00
David Garske
8f2516c4be
Merge pull request #8141 from douzzer/20241102-fixes
...
20241102-fixes
2024-11-04 10:47:53 -08:00
Andras Fekete
f7691febd3
Update generated code from scripts
2024-11-04 13:46:37 -05:00
Marco Oliverio
dce9b2e7bd
memory: fix types in static memory functions
2024-11-04 16:21:04 +00:00
Sean Parkinson
7d42ddae48
Kyber/ML-KEM: make both available
...
Make Kyber and ML-KEM individually available as well as at the same
time.
Modified TLS layer to support both Kyber and ML-KEM.
Added new identifiers in TLS layer for ML-KEM.
2024-11-04 23:51:51 +10:00
Daniel Pouzzner
6f7c968c56
rename MAX_CERT_VERIFY_SZ to WC_MAX_CERT_VERIFY_SZ, and move its setup from wolfssl/internal.h to wolfssl/wolfcrypt/asn.h.
...
rename WOLFSSL_MAX_RSA_BITS to WC_MAX_RSA_BITS, and move its setup from wolfssl/internal.h to wolfssl/wolfcrypt/asn.h, preceding setup for WC_MAX_CERT_VERIFY_SZ.
configure.ac: restore opensslextra-linuxkm assertion, with a twist: "--enable-opensslextra with --enable-linuxkm-pie and without --enable-cryptonly is incompatible with --enable-linuxkm."
wolfcrypt/src/asn.c: fix trailing comma in enum.
wolfcrypt/src/port/arm/armv8-aes.c: fix wc_AesCcmEncrypt() and wc_AesCcmDecrypt() for test_wolfssl_EVP_aes_ccm_zeroLen().
2024-11-02 23:50:34 -05:00
Daniel Pouzzner
6119c52802
Merge pull request #8043 from bandi13/addCodespell
...
Add Codespell test to PRs
2024-11-01 21:20:29 -05:00
David Garske
836b741402
Merge pull request #8132 from douzzer/20241024-opensslcoexist-opensslextra
...
20241024-opensslcoexist-opensslextra
2024-11-01 14:34:11 -07:00
David Garske
671f93135b
Fixes for consistency in ASSERT_SAVED_VECTOR_REGISTERS and RESTORE_VECTOR_REGISTERS.
2024-11-01 14:24:30 -07:00
David Garske
ca6d49da97
Merge pull request #8139 from douzzer/20241031-fixes
...
20241031-fixes
2024-11-01 14:03:48 -07:00
David Garske
99daac3974
Improvement for SAVE_VECTOR_REGISTERS
2024-11-01 13:57:02 -07:00
David Garske
f95c4d7b67
Fix for building sources (wildcard *.c). Add macro guard on new files.
2024-11-01 10:46:40 -07:00
Daniel Pouzzner
b41ce0427c
src/pk.c: in pem_read_bio_key(), fix invalid read (ZD#18875).
2024-11-01 12:43:08 -05:00
Andras Fekete
0915012b72
Fix new spelling errors
2024-11-01 13:00:59 -04:00
Andras Fekete
8612f15d2e
Don't modify Renesas config files
2024-11-01 12:59:01 -04:00
Andras Fekete
34298e8ada
More spelling fixes
2024-11-01 12:59:01 -04:00
Andras Fekete
e14abbdc79
Cleanup spelling
2024-11-01 12:59:01 -04:00
Andras Fekete
9082baabd3
Change the name of the file.
2024-11-01 12:59:01 -04:00
Andras Fekete
e28316027e
Cleaner way to exclude words that are considered 'misspelled'
2024-11-01 12:59:01 -04:00
Andras Fekete
552968bd5d
Add explanations for excluded files
2024-11-01 12:59:01 -04:00
Andras Fekete
b8f9ac6fa5
Eliminate some UTF-8 errors
2024-11-01 12:59:01 -04:00
Andras Fekete
31d0dfb981
Add in some common code to keep Actions to a minimum
2024-11-01 12:59:01 -04:00
Andras Fekete
f4dae7cbaf
Few more spelling mistakes
2024-11-01 12:59:01 -04:00
Andras Fekete
c0cb206a80
Suspicious that codespell is not checking spelling
2024-11-01 12:59:01 -04:00
Andras Fekete
8b81d6e099
Simple word fix
2024-11-01 12:59:01 -04:00
Andras Fekete
099c6e0e1f
Fix multiple filenames
2024-11-01 12:59:01 -04:00
Andras Fekete
b8253ac4c5
Final set of spelling fixes
2024-11-01 12:59:01 -04:00
Andras Fekete
8ecfe311d8
More spelling fixes
2024-11-01 12:59:01 -04:00
Andras Fekete
6c4b403fa4
More exceptions
2024-11-01 12:59:01 -04:00
Andras Fekete
b3fe71d9d9
Spelling fixes
2024-11-01 12:59:01 -04:00
Andras Fekete
88d4b4c815
Few more exceptions
2024-11-01 12:59:01 -04:00
Andras Fekete
97998d0713
Spellcheck on assembly
2024-11-01 12:59:01 -04:00
Andras Fekete
631eafacb8
Fix some spelling
2024-11-01 12:59:01 -04:00
Andras Fekete
57acf721d4
Minor fixes
2024-11-01 12:59:01 -04:00
Andras Fekete
725e4323e2
Use ignore words list instead of file
2024-11-01 12:59:01 -04:00
Andras Fekete
19e9e31b7c
Add Codespell test to PRs
2024-11-01 12:59:01 -04:00
Daniel Pouzzner
9db74dc128
configure.ac: add AM_MAINTAINER_MODE([disable]);
...
add config-time assert for "dual-alg-certs is incompatible with --enable-cryptonly.";
remove obsolete config-time check for "--enable-opensslextra without --enable-cryptonly is incompatible with --enable-linuxkm.";
linuxkm/linuxkm_wc_port.h: add fallback definitions for INT32_MAX and UINT32_MAX;
linuxkm/module_exports.c.template: add wolfssl/openssl/fips_rand.h;
wolfssl/wolfcrypt/settings.h: add #undef HAVE_ATEXIT to WOLFSSL_LINUXKM settings;
wolfssl/wolfcrypt/types.h: fix trailing comma in the DYNAMIC_TYPE_* enum.
2024-11-01 11:57:36 -05:00
Daniel Pouzzner
6b78726f13
Merge pull request #8134 from dgarske/ge448
...
Fix GE448 conversion warning
2024-11-01 11:55:01 -05:00
JacobBarthelmeh
13ad54cf46
wolfCLU added support for PKCS7
2024-11-01 09:44:46 -06:00
Anthony Hu
d959d9de7f
cast 1 to long
2024-11-01 11:34:22 -04:00
Sean Parkinson
24003b265a
Merge pull request #8129 from bigbrett/curve25519-generic-keyparsing
...
Curve25519 generic keyparsing
2024-11-01 09:04:50 +10:00
Sean Parkinson
76e421b557
Merge pull request #8118 from bigbrett/wc-test-ecc-zero-digest-disable
...
wolfcrypt tests: disable ecc sign/verify of all zero digest
2024-11-01 09:03:39 +10:00
David Garske
6e3f83d19e
Sync with script.
2024-10-31 15:54:05 -07:00
David Garske
652f7059ce
Merge pull request #8061 from wolfSSL/NDS_fix
...
Libnds : Added more descriptive README for IDE/NDS and MelonDS C-flag
2024-10-31 14:53:22 -07:00
Anthony Hu
2254ec89d3
Fix for setting wrong version in CSRs.
2024-10-31 17:08:42 -04:00
Brett Nicholas
aafd07d79a
remove ECC_SHAMIR macro protection for ECC sign/verify of zero digest
2024-10-31 14:20:57 -06:00
Brett Nicholas
325221707c
address review feedback
2024-10-31 13:02:21 -06:00
Daniel Pouzzner
950ee40111
additional fixes and enhancements for -DOPENSSL_EXTRA -DOPENSSL_COEXIST:
...
configure.ac:
* add --enable-all-osp to separate OSP meta-feature sets from --enable-all, allowing --enable-all --disable-all-osp --disable-opensslall (e.g. for testing OPENSSL_COEXIST).
* fix enable_all_crypto=yes in enable-all to be conditional on "$enable_all_crypto" = "".
* move enable_rsapss=yes from enable-all to enable-all-crypto.
examples/ and testsuite/: #undef OPENSSL_COEXIST unconditionally rather than only if defined(OPENSSL_EXTRA), to capture -DOPENSSL_EXTRA_X509_SMALL or any other such variants.
2024-10-31 13:42:04 -05:00
David Garske
0d495702e5
Fix GE448 conversion warning:
...
`error: conversion from ‘word32’ {aka ‘unsigned int’} to ‘byte’ {aka ‘unsigned char’} may change value`
2024-10-31 10:34:19 -07:00
Brett Nicholas
17c7b6cc3a
moved some macro logic from test.c to settings.h
2024-10-31 10:51:51 -06:00
David Garske
429e7c79e3
Merge pull request #8133 from SparkiDev/asm_no_uint_t
...
ASM: generated code not using uint*_t types
2024-10-31 07:42:12 -07:00
Daniel Pouzzner
39e8cb55bb
additional fixes and peer review for -DOPENSSL_EXTRA -DOPENSSL_COEXIST: cover -DWOLFSSL_QUIC, fix -DNO_ASN, rename WOLFSSL_ASN1_TYPE_* to WOLFSSL_V_ASN1_*, completed nativization of NID_*, and switch to prefix WC_NID_ rather than wc_NID_.
2024-10-31 00:10:21 -05:00
Daniel Pouzzner
a2bcbf7ecf
additional fixes and peer review for -DOPENSSL_EXTRA -DOPENSSL_COEXIST: cover -DWOLFSSL_QUIC, fix -DNO_ASN, rename WOLFSSL_ASN1_TYPE_* to WOLFSSL_V_ASN1_*, completed nativization of NID_*, and switch to prefix WC_NID_ rather than wc_NID_.
2024-10-31 00:10:21 -05:00
Daniel Pouzzner
ca9d012a24
wolfssl/ssl.h: remove OPENSSL_EXTRA gate on definitions for WOLFSSL_ASN1_TYPE_* -- some are used in non-OPENSSL_EXTRA builds, e.g. when -DWOLFSSL_X509_NAME_AVAILABLE.
2024-10-31 00:10:21 -05:00
Daniel Pouzzner
cf95fdc071
Globally remap & refactor conflicting symbols to allow -DOPENSSL_EXTRA -DOPENSSL_COEXIST, or equivalently, --enable-opensslextra --enable-opensslcoexist.
...
No functional changes.
Several compat symbols that were formerly enums are now macros.
All library source is refactored to use only native symbols in all code gated in with --enable-all-crypto --enable-opensslextra.
wolfcrypt/test/test.c is similarly refactored to use only native symbols.
examples/ and tests/ are unmodified except for header setup to disable OPENSSL_COEXIST and TEST_OPENSSL_COEXIST.
2024-10-31 00:10:21 -05:00
Sean Parkinson
dcd75df852
ASN template documentation: adding basics for decoding
...
First draft of ASN template documentation that helps with writing
parsing code.
2024-10-31 12:08:22 +10:00
Sean Parkinson
89d2964320
Merge pull request #8115 from miyazakh/ocsp_tls13_client
...
Check Intermediate cert OCSP when using tls1.3 for client side
2024-10-31 11:13:01 +10:00
Daniel Pouzzner
4b8c9bbb6d
Merge pull request #8130 from anhu/cks_tlsver_downgrade
...
Consider downgrade to TLS 1.2 when parsing CKS.
2024-10-30 19:20:24 -05:00
Sean Parkinson
26312141d8
ASM: generated code not using uint*_t types
...
Don't use uint*_t types as they may not be available.
2024-10-31 10:14:00 +10:00
Sean Parkinson
614a0e3f09
Merge pull request #8123 from dgarske/armasm
...
Fix issue with error: conflicting types for 'BlockSha3'
2024-10-31 09:37:26 +10:00
David Garske
544a7d93e1
Merge pull request #8103 from bandi13/addUncommonUtilities
...
Add less frequently used tools that are handy to have
2024-10-30 15:24:25 -07:00
David Garske
807975c864
Merge pull request #8127 from anhu/percentd
...
added a missing %d
2024-10-30 15:21:15 -07:00
David Garske
d147968aed
Merge pull request #8125 from philljj/fix_acert_test_defined_not_used
...
tests api: fix inconsistent do_acert_verify_test guards.
2024-10-30 15:21:04 -07:00
David Garske
fc56060873
Merge pull request #8102 from embhorn/topic2203
...
Fix docs for invalid hash requirements.
2024-10-30 15:15:19 -07:00
Anthony Hu
69f2529aa5
Consider downgrade to TLS 1.2 when parsing CKS.
2024-10-30 16:50:59 -04:00
JacobBarthelmeh
bc56129ed8
display heap pointer with debug enabled
2024-10-30 14:39:12 -06:00
Brett Nicholas
20cf6b74c1
fix curve25519 test sanitizer errors
2024-10-30 14:02:38 -06:00
Brett Nicholas
589bcaa12a
added doxygen for curve25519 DER functions
2024-10-30 12:56:14 -06:00
Brett Nicholas
62d7e90352
added additional curve25519 generic test
2024-10-30 12:56:10 -06:00
Anthony Hu
54dc8320d2
added a missing %d
2024-10-30 14:53:21 -04:00
David Garske
0669ba82c4
Avoid stdint types.
2024-10-30 10:28:45 -07:00
jordan
90648b1e79
tests api: fix inconsistent do_acert_verify_test guards.
2024-10-30 11:06:54 -05:00
Brett Nicholas
97a370ed08
added generic curve25519 encode/decode functions that can handle combined keypairs
2024-10-30 09:37:16 -06:00
David Garske
c557c6f2bd
Fix issue with error: conflicting types for 'BlockSha3'.
...
```
[CC-AARCH64] lib/wolfssl/wolfcrypt/src/port/arm/armv8-sha3-asm_c.o
lib/wolfssl/wolfcrypt/src/port/arm/armv8-sha3-asm_c.c:212:6: error: conflicting types for 'BlockSha3'; have 'void(long unsigned int *)'
212 | void BlockSha3(unsigned long* state)
| ^~~~~~~~~
In file included from lib/wolfssl/wolfcrypt/src/port/arm/armv8-sha3-asm_c.c:35:
lib/wolfssl/wolfssl/wolfcrypt/sha3.h:224:20: note: previous declaration of 'BlockSha3' with type 'void(word64 *)' {aka 'void(long long unsigned int *)'}
224 | WOLFSSL_LOCAL void BlockSha3(word64 *s);
| ^~~~~~~~~
```
2024-10-29 16:56:50 -07:00
Hideki Miyazaki
b409967f3b
fix spaces
2024-10-30 07:47:40 +09:00
David Garske
72306b9a67
Merge pull request #7973 from bandi13/fixSniffer
...
Fix sniffer
2024-10-29 15:21:41 -07:00
Hideki Miyazaki
b07a372b52
Fix spaces and tabs
2024-10-30 06:42:07 +09:00
David Garske
b982314ac6
Merge pull request #8101 from miyazakh/tsip_ca_add
...
Check Root CA by TSIP before adding it to ca-table
2024-10-29 14:23:47 -07:00
JacobBarthelmeh
2b8d43cef2
Merge pull request #8119 from dgarske/async_20241028
...
Fixes for asynchronous release - SHA3/HMAC devId
2024-10-29 15:11:43 -06:00
Andras Fekete
2cdecd85a2
If we have a capture on device 'any', then we need to handle the offset
...
Detect reading of packet errors
--enable-all and --enable-sniffer exposed this issue
Don't need variable
Rework argument parsing
Need a way to allow arguments to be supplied more granularly. Partucilarly, I needed a "-tracefile" argument without requiring the use of a PCAP file
Fix error prints to STDERR
Fix setting of port filtering
Fix 80 char limit
Not actually a bad packet when there are no more packets
Fix strcat size
Allow the sniffer to print the trace to STDOUT
Fix indexing
Take out superfluous error which is handled later
Set default port to 11111
Single return point
Combine chain to one contiguous memory block
Fix return
Add in error handling for XMALLOC
Add in debugging output when --enable-debug
It makes no sense to allocate a ton of small buffers to process chains
Ultimately, the code is slower because of the several small memcpy instead of a single large contiguous memcpy
Pass in a device name
Fix unused variable
Fix cast
Addressing PR comments
Add new flags to --help
2024-10-29 16:55:20 -04:00
Daniel Pouzzner
0ded8ba0c7
Merge pull request #8074 from bandi13/revertGithubFix
...
Revert "Merge pull request #8072 from rizlik/github-fix"
2024-10-29 15:17:50 -05:00
Daniel Pouzzner
5b07d47e7b
Merge pull request #8095 from embhorn/coverity-workflow
...
Add more configs to Coverity scan schedule.
2024-10-29 15:02:15 -05:00
David Garske
84b5d6613d
More fixes for building x86 in Visual Studio for non-windows OS (Watcom C compiler). Followup to PR #7884 . Fixes ZD 18465
...
* Consolidate the USE_WINDOWS_API to a single place.
* Expand the `WOLFSSL_NOT_WINDOWS_API` improvement for intrinsics and word sizes.
* Fix for macro variadic `...` when no variables are used (some compilers like Watcom C have issue with this).
* Fix for Watcom C compiler "long long" -> "__int64".
* Fix a couple of minor cast warnings reported from VS.
2024-10-29 11:50:24 -07:00
Hideki Miyazaki
32c1f8bbd7
implement TSIP RSA Public Enc/Private Dec
2024-10-29 20:09:22 +09:00
Daniel Pouzzner
57a5895d0e
Merge pull request #8110 from philljj/fix_infer
...
infer: fix uninit values in pkcs8_encode.
2024-10-29 01:16:04 -05:00
Sean Parkinson
202822c655
Merge pull request #8114 from douzzer/20241025-fixes
...
20241025-fixes
2024-10-29 09:55:03 +10:00
David Garske
ea35b98005
Fixed SHA3 issue with possible uninitialized devId when building with async. Fixed HMAC set key issue with devId/heap getting lost.
2024-10-28 11:30:05 -07:00
Brett Nicholas
cac11e3d09
add non-feature-specific macro to disable ECC sign/verify of all-zero digest
2024-10-28 12:22:10 -06:00
Hideki Miyazaki
79a9e0a709
intermediate cert check when using tls1.3 for client side
2024-10-26 14:09:58 +09:00
Daniel Pouzzner
6f87f57d7a
fixes for gating and ARM32 alignment defects:
...
wolfcrypt/src/port/arm/armv8-aes.c: in the WOLFSSL_ARMASM_NO_HW_CRYPTO version of wc_AesSetKey(), copy the supplied userKey to a properly aligned buffer if necessary before calling AES_set_encrypt_key();
src/dtls13.c: in Dtls13GetRnMask(), if defined(WOLFSSL_LINUXKM)), return retval of wc_AesEncryptDirect();
wolfcrypt/src/misc.c: add readUnalignedWord32(), writeUnalignedWord32(), readUnalignedWords32(), and writeUnalignedWords32();
wolfcrypt/src/siphash.c: use readUnalignedWord64(), readUnalignedWord32(), and writeUnalignedWord64(), to avoid unaligned access faults, and fix cast in byte-reversing version of GET_U32().
2024-10-25 23:52:32 -05:00
jordan
9d8c5a293f
dilithium: expose wc_MlDsaKey_GetX functions as API.
2024-10-25 13:29:06 -05:00
Daniel Pouzzner
bdd62314f0
Merge pull request #8111 from JacobBarthelmeh/release
...
prepare for release 5.7.4
2024-10-24 16:00:03 -05:00
JacobBarthelmeh
dd2b191c36
update version listed in wolfssl-fips.rc and Ada wrapper
2024-10-24 14:19:17 -06:00
JacobBarthelmeh
8c5e188dd4
remove trailing white space in README
2024-10-24 13:04:00 -06:00
JacobBarthelmeh
8604024b95
prepare for release 5.7.4
2024-10-24 11:32:33 -06:00
Daniel Pouzzner
3f651a8dd0
Merge pull request #8109 from JacobBarthelmeh/coverity
...
Recent coverity warnings
2024-10-23 21:18:44 -05:00
jordan
ce31b15608
infer: fix uninit values in pkcs8_encode.
2024-10-23 20:11:51 -05:00
Hideki Miyazaki
a14d7db58c
move trailing space
2024-10-24 09:31:00 +09:00
JacobBarthelmeh
52ba700eb3
CID 426426 code maintainability warning, stored NULL value overwritten before used
2024-10-23 18:05:12 -06:00
JacobBarthelmeh
077b070132
CID 426427 remove duplicate null checks
2024-10-23 17:57:14 -06:00
JacobBarthelmeh
9af8716e85
Merge pull request #8087 from ColtonWilley/x509_store_rewrite
...
Initial rewrite of X509 STORE to replicate openssl behavior
2024-10-23 17:14:40 -06:00
Daniel Pouzzner
e7e20532eb
Merge pull request #8097 from julek-wolfssl/zd/18822
...
Fix TLS v1.2 session resumption edge cases
2024-10-23 18:01:35 -05:00
JacobBarthelmeh
830c5dace6
Merge pull request #8106 from douzzer/20241023-fixes
...
20241023-fixes
2024-10-23 16:44:09 -06:00
David Garske
25e32c2539
Fix for TLS v1.2 session resumption with tickets where the server decides to do a full handshake. The wrong sessionIDSz was being checked and should be the arrays one since it get set from the server_hello.
2024-10-23 15:14:05 -07:00
Daniel Pouzzner
cab20fbdd2
add and use WOLFSSL_PARTIAL_CHAIN as native bitmask macro for compat layer X509_V_FLAG_PARTIAL_CHAIN;
...
in src/x509_str.c, fix several C++ "invalid conversion" errors in X509StoreFreeObjList() and wolfSSL_X509_STORE_get0_objects().
2024-10-23 16:57:58 -05:00
Colton Willey
6f0bcac737
Address review comments, rename WOLFSSL_INTER_CA, use up_ref for get issuer
2024-10-23 16:55:34 -05:00
Colton Willey
ee4e1b6262
Properly omit self signed CA from untrusted intermediates, handle memory leak for SSL case with proper flow
2024-10-23 16:55:34 -05:00
Colton Willey
95f8d74202
Fix loop to decrement
2024-10-23 16:55:34 -05:00
Colton Willey
96138e70f8
Restore proper error code handling for self signed CA in non-trusted intermediates
2024-10-23 16:55:34 -05:00
Colton Willey
4c63668295
Small changes per review comments
2024-10-23 16:55:34 -05:00
Colton Willey
3fc3a84a6b
Move X509_STORE_CTX_set_flags under OPENSSL_EXTRA
2024-10-23 16:55:34 -05:00
Colton Willey
1ddb2ce435
Properly implement set flags for X509_V_FLAG_PARTIAL_CHAIN
2024-10-23 16:55:34 -05:00
Colton Willey
87ce96527a
Changes for various failing build configs
2024-10-23 16:55:34 -05:00
Colton Willey
1afbf55a80
Fix new build error after refactor
2024-10-23 16:55:34 -05:00
Colton Willey
6607314dc6
Address code comments, rewrite get issuer internals, use better internal names, get rid of all lines over 80 chars
2024-10-23 16:55:34 -05:00
Colton Willey
f0fae6506f
Fix windows warnings
2024-10-23 16:55:34 -05:00
Colton Willey
98eb6b398c
Fix for windows builds
2024-10-23 16:55:34 -05:00
Colton Willey
f7bfa71d9f
Implement support for verify flag X509_V_FLAG_PARTIAL_CHAIN
2024-10-23 16:55:34 -05:00
Colton Willey
12f4f69fb4
Allow intermediate CA certs without keycertsign when added through X509 STORE
2024-10-23 16:55:34 -05:00
Colton Willey
38c7de1707
Fixes for CI build errors
2024-10-23 16:55:34 -05:00
Colton Willey
17c9e92b7f
Initial rewrite of X509 STORE to replicate openssl behavior
2024-10-23 16:55:34 -05:00
Daniel Pouzzner
82273094e0
Merge pull request #8107 from JacobBarthelmeh/aesgcm
...
fix for state of aes.gcm.H on re-use
2024-10-23 16:52:42 -05:00
JacobBarthelmeh
1d25e0f89b
Merge pull request #8104 from gojimmypi/pr-vs2022-wolfssl-name
...
Name VS2022 binary output wolfssl via project name
2024-10-23 15:36:55 -06:00
JacobBarthelmeh
8fbf6a59bc
Merge pull request #8105 from kareem-wolfssl/zd18825
...
Fix 256-bit ECC conditional in ecc_map_ex.
2024-10-23 15:19:50 -06:00
JacobBarthelmeh
d0f5778429
fix for state of aes.gcm.H on re-use
2024-10-23 15:04:06 -06:00
Andras Fekete
7cee9faa73
Addressing PR comments
2024-10-23 16:53:10 -04:00
Andras Fekete
19d738cecf
Revert "Don't need to upload/download artifacts"
...
This reverts commit b215398bd4 .
2024-10-23 14:28:24 -04:00
Kareem
8986a9dae0
Fix 256-bit ECC conditional in ecc_map_ex.
2024-10-23 11:12:48 -07:00
Daniel Pouzzner
afa5b0168e
fix HAVE_SHA* configurations in IDE/iotsafe/user_settings.h to also set WOLFSSL_SHA*, and in IDE/STM32Cube/default_conf.ftl, IDE/iotsafe/user_settings.h, and examples/configs/user_settings_stm32.h, comment HAVE_SHA* as "old freeRTOS settings.h requires this".
2024-10-23 12:46:32 -05:00
gojimmypi
e3c9c07393
Name VS2022 binary output wolfssl via project name
2024-10-23 09:51:18 -07:00
Daniel Pouzzner
6e14889758
Merge pull request #8094 from JacobBarthelmeh/coverity
...
minor fixes for Coverity reports
2024-10-23 11:26:33 -05:00
JacobBarthelmeh
beeda7bc6f
Merge pull request #8100 from douzzer/20241022-cleanups
...
20241022-cleanups
2024-10-23 10:08:57 -06:00
Andras Fekete
cf6975b603
Add less frequently used tools that are handy to have
2024-10-23 11:23:46 -04:00
Eric Blankenhorn
f20f96c8a2
Fix docs for invalid hash requirements.
2024-10-23 08:43:00 -05:00
Juliusz Sosinowicz
031656ee7a
Send a new ticket when rejecting a ticket and tickets enabled
2024-10-23 13:12:46 +02:00
Hideki Miyazaki
ba1cd85934
check Root CA by TSIP before adding it to ca-table
2024-10-23 18:02:56 +09:00
Daniel Pouzzner
ea491b80ef
tests/api.c: gate test_GENERAL_NAME_set0_othername() on OPENSSL_ALL, not OPENSSL_EXTRA, as it fails with --enable-all-crypto --enable-opensslextra, and is commented to require --enable-opensslall.
2024-10-23 00:02:29 -05:00
Daniel Pouzzner
3bbd00f918
wolfcrypt/src/asn.c: tweak retval handling in MakeSignature() CERTSIGN_STATE_DO section for the benefit of WOLFSSL_DEBUG_TRACE_ERROR_CODES.
2024-10-23 00:02:29 -05:00
Daniel Pouzzner
508555c927
configure.ac: add several missing low level crypto algorithms to all-crypto that are already included indirectly in enable-all.
2024-10-23 00:02:29 -05:00
Daniel Pouzzner
30181f2ced
configure.ac: for reproducible-build, use --build-id=sha1, not --build-id=none, to support users relying on build-id in the linked object.
2024-10-23 00:02:29 -05:00
Daniel Pouzzner
bffcfb7efc
wolfcrypt/src/ecc.c: in wc_ecc_get_curve_id_from_oid(), deconditionalize guard against zero-length len added in 03a6eed037, to fix test_wc_ecc_get_curve_id_from_oid() failing in cross-mingw-all-crypto.
2024-10-23 00:02:29 -05:00
Daniel Pouzzner
6429315216
fix references to misnamed HAVE_SHA224, HAVE_SHA384, HAVE_SHA512 (correct names have WOLFSSL_ prefixes).
2024-10-23 00:02:28 -05:00
JacobBarthelmeh
43fe46cf24
Merge pull request #8099 from dgarske/armasm_aes
...
Fix issue with ARM ASM with AES CFB/OFB not initializing the "left" member
2024-10-22 17:29:45 -06:00
David Garske
5a0bb3a3ed
Fix issue with ARM ASM with AES CFB/OFB not initializing the "left" member. ZD 18841.
2024-10-22 14:30:54 -07:00
JacobBarthelmeh
f21a763ae9
return out of test function if failing RNG init
2024-10-22 14:22:46 -06:00
Andras Fekete
d981cd5b36
Revert "Test using my branch"
...
This reverts commit 5a1da526da .
2024-10-22 12:22:08 -04:00
Andras Fekete
6255859925
Fix package name
2024-10-22 10:56:42 -04:00
Andras Fekete
5a1da526da
Test using my branch
2024-10-22 10:27:38 -04:00
Juliusz Sosinowicz
2847cbfbad
Simplify TLS 1.2 session ID logic
...
Optimize entropy use. Only generate the exact amount of random data that we will actually keep.
Refactor done as part of work on ZD18822
2024-10-22 14:31:46 +02:00
JacobBarthelmeh
18150a11aa
CID 426062,426063 initialization and free check
2024-10-22 00:24:29 -06:00
JacobBarthelmeh
27267d7d2e
CID 426066 fix check if null before free
2024-10-22 00:21:26 -06:00
Daniel Pouzzner
846ef1570d
Merge pull request #8096 from philljj/fix_coverity_more
...
Fix more coverity errors.
2024-10-21 23:57:56 -05:00
Daniel Pouzzner
f8fc31e134
Merge pull request #8090 from gojimmypi/pr-visual-studio-2022
...
Add Visual Studio 2022 Project Files for wolfSSL, Test, & Benchmark
2024-10-21 23:56:57 -05:00
Daniel Pouzzner
805eaa90cc
Merge pull request #7797 from julek-wolfssl/softhsm
...
Init SoftHSMv2 support
2024-10-21 23:56:12 -05:00
jordan
5fd9e99bbd
coverity: don't overwrite obj in wolfSSL_X509_get_ext_d2i.
2024-10-21 20:49:34 -05:00
JacobBarthelmeh
b535d9f752
Merge pull request #8093 from philljj/fix_coverity
...
Fix coverity
2024-10-21 16:45:51 -06:00
Eric Blankenhorn
4aa3d5f8ce
Add more configs to Coverity scan schedule.
2024-10-21 17:29:07 -05:00
gojimmypi
ee24446bee
Add Visual Studio 2022 Project Files for wolfSSL, Test, & Benchmark
2024-10-21 14:05:51 -07:00
jordan
5690af82dc
wolfcrypt test: fix double free.
2024-10-21 15:57:24 -05:00
jordan
35def11781
coverity: fix error, and cleanup.
2024-10-21 14:59:32 -05:00
JacobBarthelmeh
104c805b82
Merge pull request #8092 from douzzer/20241021-wc_FreeRsaKey-WOLFSSL_XILINX_CRYPT
...
20241021-wc_FreeRsaKey-WOLFSSL_XILINX_CRYPT
2024-10-21 13:26:55 -06:00
Daniel Pouzzner
38c337967e
Merge pull request #8086 from bandi13/addDependency
...
Need 'libfile' for license.pl
2024-10-21 14:20:42 -05:00
Daniel Pouzzner
25da3bfe5f
Merge pull request #8070 from JacobBarthelmeh/testing_static_memory
...
use heap hint with wolfSSL_CTX_check_private_key
2024-10-21 13:57:55 -05:00
JacobBarthelmeh
8a71c3b3db
Merge pull request #8066 from gojimmypi/pr-espressif-wolfcrypt
...
Apply various Espressif compatibility updates
2024-10-21 11:36:24 -06:00
Daniel Pouzzner
f24b987f59
wolfcrypt/src/rsa.c: fix wc_FreeRsaKey() WOLFSSL_XILINX_CRYPT XFREE() call to pass key->heap as before.
2024-10-21 12:26:29 -05:00
gojimmypi
187a9b5b4d
Apply various Espressif compatibility updates
2024-10-21 09:20:32 -07:00
JacobBarthelmeh
bc0a2c43e6
avoid warning for unused parameter with certain build configurations
2024-10-21 10:04:26 -06:00
JacobBarthelmeh
efff8e096c
Merge pull request #8076 from gojimmypi/pr-update-espressif-examples
...
Update Espressif Examples
2024-10-21 09:57:29 -06:00
Juliusz Sosinowicz
901384e704
Init SoftHSMv2 support
...
- wolfSSL_EVP_PKEY_set1_DH: If both private and public present, output private key
- ToTraditionalInline_ex2: Add DH checking
- wc_ecc_get_curve_id: check index is not negative
- Fix i2d_PKCS8_PRIV_KEY_INFO to actually output pkcs8 instead of just der
- wolfSSL_EVP_PKEY2PKCS8: Create duplicate to avoid double free
- wolfSSL_DH_generate_key: Fix case where not enough buffer was allocated for 128 bit case
- pkcs8_encode: Add DSA and DH support
- wolfSSL_d2i_PKCS8_PKEY: Correctly advance buffer
- RSA_LOW_MEM: export all integers in compat layer
- Add softhsm action
- Define
- OPENSSL_DH_MAX_MODULUS_BITS
- OPENSSL_DSA_MAX_MODULUS_BITS
- OPENSSL_RSA_MAX_MODULUS_BITS
- Implement
- BN_mul_word
- i2d_ECPKParameters
- PEM_write_bio_PKCS8_PRIV_KEY_INFO
- PEM_read_bio_PKCS8_PRIV_KEY_INFO
- i2d_PKCS8_PRIV_KEY_INFO
- RSA_padding_add_PKCS1_PSS_mgf1
- RSA_verify_PKCS1_PSS_mgf1
2024-10-21 17:26:42 +02:00
JacobBarthelmeh
8fda4ce147
use heap hint with wolfSSL_CTX_check_private_key
2024-10-21 08:53:15 -06:00
JacobBarthelmeh
ef063aac2f
Merge pull request #8091 from julek-wolfssl/openvpn-action-update
...
openvpn action: remove v2.6.0 as certs have expired
2024-10-21 08:50:53 -06:00
Juliusz Sosinowicz
e1aba52e51
openvpn action: remove v2.6.0 as certs have expired
2024-10-21 13:50:36 +02:00
philljj
ea3a79e216
Merge pull request #8089 from douzzer/20241017-wc-delete-methods
...
20241017-wc-delete-methods
2024-10-19 11:07:19 -05:00
Daniel Pouzzner
996986d0c1
refactor wc_AesDelete, wc_curve25519_delete, wc_ed25519_delete, wc_HashDelete, and wc_DeleteRsaKey to take two arguments, the first a required pointer to the object, the second an optional pointer to the pointer to be zeroed upon successful deletion, for the benefit of calling from C# without unsafe code.
...
wrapper/CSharp/wolfSSL_CSharp/wolfCrypt.cs: update for new calling conventions around wc_AesNew, wc_curve25519_new, wc_ed25519_new, wc_HashNew, and wc_NewRsaKey, and the corresponding delete functions.
2024-10-18 21:13:38 -05:00
Daniel Pouzzner
f44d12026a
wolfssl/wolfcrypt/{aes.h,curve25519.h,ed25519.h,hash.h,rsa.h}: remove unneeded .isAllocated member from struct definitions, and add int *result_code argument to constructor prototypes;
...
wolfssl/wolfcrypt/aes.h: add Aes.streamData_sz;
src/tls13.c: fix devId passed to wc_HmacInit() in CreateCookieExt() and TlsCheckCookie();
src/keys.c: in SetKeys(), call wc_HmacInit() on hmacs only if newly allocated;
wolfcrypt/src/aes.c:
* in wc_Gmac(), wc_GmacVerify(), and AesSivCipher(), use wc_AesNew() and wc_AesDelete();
* in wc_AesInit(), zero the object on entry, and remove superseded piecemeal initializations to zero;
* in wc_AesFree(), zero aes->streamData, and zero the entire object as final cleanup;
wolfcrypt/src/curve25519.c: in wc_curve25519_free(), zero the entire object rather than zeroing piecemeal;
wolfcrypt/test/test.c:
* add fallback implementations (for old FIPS) of wc_HashNew(), wc_HashDelete(), wc_curve25519_new(), wc_curve25519_delete(), wc_ed25519_new(), and wc_ed25519_delete();
* update constructor calls throughout for new semantics;
* refactor ed25519_test() for proper cleanup and error encoding.
2024-10-18 17:49:28 -05:00
Daniel Pouzzner
984d16b727
refactor wolfcrypt constructors:
...
add delete APIs, matching recently added wc_AesNew, wc_curve25519_new, wc_ed25519_new, wc_HashNew, and wc_NewRsaKey:
* wc_AesDelete()
* wc_HashDelete()
* wc_DeleteRsaKey()
* wc_curve25519_delete()
* wc_ed25519_delete()
* remove handling in corresponding preexisting free APIs for recently added .isAllocated member -- this restores preexisting semantics;
* add WC_NO_CONSTRUCTORS gate, and auto-activate it when NO_WOLFSSL_MEMORY && WOLFSSL_NO_MALLOC (unless preempted by XMALLOC_USER or XMALLOC_OVERRIDE);
* exclude recently added .isAllocated members from wolfcrypt structs when defined(WC_NO_CONSTRUCTORS);
* adjust wolfcrypt/test/test.c for consistency with the above, and fix cleanup codes/dynamics in several tests.
2024-10-17 18:48:07 -05:00
Andras Fekete
b215398bd4
Don't need to upload/download artifacts
2024-10-17 16:49:27 -04:00
philljj
61b726fae7
Merge pull request #8088 from douzzer/20241016-dtls13-cleanup
...
20241016-dtls13-cleanup
2024-10-17 15:58:07 -04:00
Andras Fekete
752b2c075c
Add exception to forked repos
2024-10-17 15:09:03 -04:00
Andras Fekete
8ed406c69d
Fix test issues
2024-10-17 12:08:21 -04:00
Daniel Pouzzner
06de22e72b
api.c:test_wolfSSL_dtls_stateless_maxfrag(): add missing condition (clang-analyzer-core.NullDereference).
2024-10-17 10:57:19 -05:00
Daniel Pouzzner
fa65da7bb0
analyzer-driven cleanups of --enable-dtls13 --enable-dtls-mtu --enable-dtls-frag-ch:
...
Dtls13HashClientHello(): fix wc_HashType handling;
Dtls13SendFragment(): fix identicalConditionAfterEarlyExit;
GetDtlsRecordHeader(): fix error handling around GetDtls13RecordHeader() (incorrectLogicOperator);
test_wolfSSL_dtls_stateless_maxfrag(): fix a clang-analyzer-core.NullDereference,
test_dtls_frag_ch(): fix a clang-diagnostic-embedded-directive,
test_AEAD_limit_client(): fix an united-data defect found by valgrind.
2024-10-17 00:06:32 -05:00
Daniel Pouzzner
abc6edf4c7
Merge pull request #7796 from SparkiDev/dtls_read_write_threaded
...
SSL asynchronous read/write and encrypt
2024-10-17 00:05:47 -05:00
Daniel Pouzzner
8803f3dd70
Merge pull request #8085 from philljj/fix_coverity
...
Fix coverity errors
2024-10-16 17:18:31 -05:00
Daniel Pouzzner
cc421ddace
Merge pull request #8075 from night1rider/MAX-HW-SHA-FIX
...
Fixing CB needing HAVE_AES_ECB and SHA struct issue for MAX32666/5 port
2024-10-16 17:17:01 -05:00
Daniel Pouzzner
0c640eb3c5
Merge pull request #8081 from SparkiDev/arm32_thumb2_asm_fix
...
Thumb2 ASM: indicated by WOLFSSL_ARMASM_THUMB2
2024-10-16 17:00:01 -05:00
Daniel Pouzzner
49ad2d5c46
Merge pull request #8079 from SparkiDev/arm32_asm_regen
...
ARM32 ASM: regeneration after scripts changes
2024-10-16 16:45:28 -05:00
Andras Fekete
4ca0176668
Need 'libfile' for license.pl
2024-10-16 17:37:17 -04:00
Daniel Pouzzner
9665434694
Merge pull request #8080 from SparkiDev/coverity_fix_5
...
Unit test: fix coverity issue
2024-10-16 16:31:27 -05:00
Daniel Pouzzner
4ed3c00b29
Merge pull request #8078 from SparkiDev/sp_c_cast_and
...
SP C: cast after and with constant
2024-10-16 16:30:15 -05:00
jordan
554ebc2e9e
coverity: fix double free of encryptedContent.
2024-10-16 16:27:44 -05:00
Daniel Pouzzner
a833d6e9b2
Merge pull request #8084 from anhu/kyber_levels
...
Correct kyber levels. Was copy and paste error.
2024-10-16 15:54:18 -05:00
jordan
115507e0c0
coverity: null check.
2024-10-16 13:08:06 -05:00
Anthony Hu
db6df887a6
Correct kyber levels. Was copy and paste error.
2024-10-16 13:39:57 -04:00
jordan
d6fe15af8c
coverity: check mp_sub_d return values.
2024-10-16 11:23:33 -05:00
philljj
2abbab2fd8
Merge pull request #8082 from SparkiDev/bn_bin2bn_fix
...
BN API: fix BN_bin2bn to handle NULL data properly
2024-10-16 12:00:41 -04:00
Sean Parkinson
64a9e6f7c4
BN API: fix BN_bin2bn to handle NULL data properly
...
BN_bin2bn was freeing the BN and returning it.
Added test for this.
2024-10-16 14:08:55 +10:00
Sean Parkinson
1ce90cc8a5
Thumb2 ASM: indicated by WOLFSSL_ARMASM_THUMB2
...
Detecting ARM or Thumb2 is not simple so making our own define that will
work: WOLFSSL_ARMASM_THUMB2 to indicate to use Thumb2 assembly code.
2024-10-16 13:56:44 +10:00
Sean Parkinson
b8d3b990ea
Unit test: fix coverity issue
...
test_wolfSSL_i2d_ASN1_TYPE: don't use str after freeing it.
2024-10-16 12:40:02 +10:00
gojimmypi
a13f48aea0
Update Espressif Examples
2024-10-15 18:36:28 -07:00
Sean Parkinson
db6a2ccdca
Merge pull request #8077 from douzzer/20241015-C89-pedantic-fixes
...
20241015-C89-pedantic-fixes
2024-10-16 10:47:54 +10:00
Sean Parkinson
fb8d2fc42f
ARM32 ASM: regeneration after scripts changes
...
Scripts changed to make generated code not go over 80 characters per
line but SP not updated.
Fix input register formatting in all ARM32 C assembly code.
2024-10-16 10:25:16 +10:00
Sean Parkinson
e4a661ff6e
SSL asynchronous read/write and encrypt
...
Add support for being able to read and write in different threads with
same SSL object.
Add support for encrypt in threads.
2024-10-16 10:14:21 +10:00
Sean Parkinson
a81aa287a5
SP C: cast after and with constant
...
Always cast to sp_digit after and with a constant that would convert
value to integer.
2024-10-16 09:48:10 +10:00
Daniel Pouzzner
ffc07215a4
clean up wolfcrypt code base for -std=c89 -pedantic: add WC_BITFIELD macro to avoid -Wpedantics for "type of bit-field ... is a GCC extension", with overrideable default definition "byte", and replace parent types of all bitfields with WC_BITFIELD;
...
fix numerous trailing commas in enums, mostly by removing them, but one (in asn.h, enum Extensions_Sum) using WOLF_ENUM_DUMMY_LAST_ELEMENT();
rearrange bitfields in struct ed25519_key for contiguity;
always define WOLFSSL_SP_NO_DYN_STACK when defined(WOLF_C89).
2024-10-15 18:24:03 -05:00
Daniel Pouzzner
4fd33b6b5d
Merge pull request #8014 from SparkiDev/lms_sha256_192
...
LMS: SHA-256/192 parameters
2024-10-15 17:24:46 -05:00
Sean Parkinson
ae46f52a66
LMS: SHA-256/192 parameters
...
Add support for parameter sets with SHA-256/192.
2024-10-16 07:15:18 +10:00
philljj
6cde74436e
Merge pull request #8065 from douzzer/20241010-WOLFSSL_NO_MALLOC
...
20241010-WOLFSSL_NO_MALLOC
2024-10-15 17:03:25 -04:00
Daniel Pouzzner
cd8d158964
Merge pull request #8073 from philljj/fix_infer_issues
...
infer: fix dead store, and uninitialized value errors.
2024-10-15 15:42:48 -05:00
Daniel Pouzzner
c7146640f9
Merge pull request #8055 from rizlik/ocsp-cb-ret-propagate
...
ocsp: propagate ocsp cb return error
2024-10-15 15:38:09 -05:00
night1rider
1449f4f4d7
Fixing CB needing HAVE_AES_ECB and SHA struct issue for MAX3266X Hardware
2024-10-15 14:18:07 -06:00
jordan
f5074772da
infer: fix more uninitialized value errors.
2024-10-15 12:41:09 -05:00
Daniel Pouzzner
3e1f365e75
Merge pull request #8064 from SparkiDev/regression_fixes_14
...
Regression test fixes
2024-10-15 11:47:37 -05:00
Andras Fekete
a5331d406c
Revert "Merge pull request #8072 from rizlik/github-fix"
...
This reverts commit 0f8b4dbc63 , reversing
changes made to 743a78dc85 .
2024-10-15 12:39:01 -04:00
Marco Oliverio
724fdae7d7
ocsp: propagate ocsp cb return error
2024-10-15 10:03:15 +00:00
jordan
e3c2c650aa
infer: fix dead store, and uninitialized value errors.
2024-10-14 22:45:17 -05:00
Daniele Lacamera
cc7ccf951a
Move heap variable to all sha implementations
2024-10-14 14:21:29 -05:00
Daniel Pouzzner
260a0dee47
examples/client/client.c: fix numbering annotations, and fix string literal grouping for "-H".
2024-10-14 14:21:29 -05:00
Daniel Pouzzner
0d5d05d44d
more WOLFSSL_NO_MALLOC fixes:
...
wolfcrypt/src/dh.c: in wc_DhGenerateParams(), use named constant for buf size, and only XFREE it if !WOLFSSL_NO_MALLOC;
wolfcrypt/src/ecc.c and wolfssl/wolfcrypt/ecc.h: in wc_ecc_new_point_ex(), remove !WOLFSSL_NO_MALLOC gate around XMALLOC(), and if XMALLOC()ed, set ecc_point.isAllocated, then in wc_ecc_del_point_ex, XFREE() iff ecc_point.isAllocated;
wolfcrypt/src/pkcs7.c: in wc_PKCS7_RsaVerify(), when WOLFSSL_NO_MALLOC, jumbo-size the digest buffer to cope with in-place dynamics in RsaUnPad();
wolfcrypt/test/test.c: add !WOLFSSL_NO_MALLOC gates around various XFREE()s of objects that are on the stack in WOLFSSL_NO_MALLOC builds;
wolfssl/wolfcrypt/types.h: add an unconditional include of memory.h (itself guarded against multiple inclusion) to assure availability of WC_DEBUG_CIPHER_LIFECYCLE prototypes/macros.
2024-10-14 14:21:29 -05:00
Daniel Pouzzner
9312f3cb86
wolfssl/wolfcrypt/types.h: define USE_WOLF_STRDUP for the fallback definition of XSTRDUP regardless of WOLFSSL_NO_MALLOC (wc_strdup_ex() uses XMALLOC(), which may be a user or static pool allocator).
2024-10-14 14:21:29 -05:00
Daniel Pouzzner
0665ff9de7
wolfcrypt/src/asn.c: revert earlier WOLFSSL_NO_MALLOC changes (not needed, after proper gating in test.c).
2024-10-14 14:21:29 -05:00
Daniel Pouzzner
551eb3f44b
wolfcrypt/src/ed25519.c and wolfcrypt/src/hash.c: remove gating around isAllocated XFREE()s in wc_ed25519_free() and wc_HashFree().
2024-10-14 14:21:28 -05:00
Daniel Pouzzner
dc2a8118de
Revert "Allow compiling aes.c with WOLFSSL_NO_MALLOC"
...
This reverts commit 56a96ba609 .
2024-10-14 14:21:28 -05:00
Daniel Pouzzner
ee92f38f88
Revert "fix unused variables"
...
This reverts commit 06195a2e2a .
2024-10-14 14:21:28 -05:00
Daniel Pouzzner
2ca3e1100e
Revert "Move heap variable to all sha implementations"
...
This reverts commit a3f6babfdc .
2024-10-14 14:21:28 -05:00
Daniel Pouzzner
886ebb6ec0
fixes for enable-all-crypto enable-cryptonly WOLFSSL_NO_MALLOC:
...
wolfcrypt/src//asn.c: add stack buffer codepaths in ParseKeyUsageStr(), SetKeyIdFromPublicKey(), and EncodePolicyOID;
wolfcrypt/src/dh.c: add stack buffer codepath in wc_DhGenerateParams();
wolfcrypt/src/ecc.c: add always-fail codepath to find_hole() to preempt heap allocation attempts;
wolfcrypt/test/test.c: gate out several heap-dependent subtests when defined(WOLFSSL_NO_MALLOC), and add a stack buffer codepath in ed448_test();
wolfssl/wolfcrypt/types.h: harmonize macro definitions of XFREE() to use do { ... } while (0) wrappers to assure syntactic indivisibility.
2024-10-14 14:21:28 -05:00
Daniel Pouzzner
0f8b4dbc63
Merge pull request #8072 from rizlik/github-fix
...
ci: github: fix ubuntu version to 22.04
2024-10-14 13:47:44 -05:00
Marco Oliverio
5d3f7c2528
ci: github: fix ubuntu version to 22.04
2024-10-14 16:46:45 +00:00
Juliusz Sosinowicz
743a78dc85
Merge pull request #8046 from embhorn/zd18758
...
Clear ctx in wolfSSL_EVP_DigestInit
2024-10-14 14:35:20 +02:00
Daniel Pouzzner
caf920100c
Merge pull request #8051 from cconlon/eccOidCacheLock
...
Add lock around static ECC ecc_oid_cache
2024-10-11 17:34:54 -05:00
Daniel Pouzzner
dfd8ead95e
Merge pull request #8050 from philljj/fix_acert_defines
...
Fix acert defines, add more tests, cleanup.
2024-10-11 16:22:34 -05:00
Daniel Pouzzner
f8da04d8b0
Merge pull request #7766 from miyazakh/zd18141_tls13_ocsp
...
Add OCSP response for intermediate cert into Certificate extension on TLS1.3
2024-10-11 15:49:19 -05:00
Sean Parkinson
65742c4a7a
ARM32 ASM: regenerated with fixes
...
Fix thumb interwork def check to be consistent and update #endif.
Remove duplicate check in generated C files.
2024-10-11 09:07:57 +02:00
Sean Parkinson
5f1ddadf71
Regression test fixes
...
Fix unit tests to not compile when NO_RSA is defined and RSA used.
test_wc_PKCS7_EncodeSignedData: only RSA supported with streaming.
test_wolfSSL_RSA when SP math and SP: CRT parameters required.
test_wolfSSL_OCSP_REQ_CTX to compile with NO_ASN_TIME.
test_wolfSSL_IMPLEMENT_ASN1_FUNCTIONS: make sure all objects freed even
on memory allocation failure.
test_wolfSSL_error_cb: don't use bio if is NULL.
test_wolfSSL_BN_enc_dec: don't free a twice on memory allocation error.
test_wc_dilithium_der: remove debug printing
test_othername_and_SID_ext: make sid_oid NULL after free to ensure no
double free on later memory allocation failure.
test_wolfSSL_RSA: don't leak when BN_dup fails.
test_wolfSSL_i2d_ASN1_TYPE: free ASN1 string whn no ASN1 type to put it
into.
test_tls13_rpk_handshake: don't leak on failure
test_dtls_client_hello_timeout_downgrade: only move memory when test is
wolfSSL_certs_clear, wolfSSL_set_SSL_CTX, SetSSL_CTX: Check return from
AllocCopyDer.
d2i_generic: make sure impBuf is only freed once.
wolfSSL_BIO_write: don't dereference front unless it is not NULL.
wolfssl_dns_entry_othername_to_gn: don't free obj twice
wolfSSL_X509_REQ_add1_attr_by_NID: don't access reqAttributes if NULL.
succeeding.
2024-10-11 11:49:01 +10:00
Sean Parkinson
9c4960f3fa
Merge pull request #8035 from danielinux/armv8-armasm-ARMv7-A
...
Allow armv8-asm on ARMv7-A with -mthumb-interwork
2024-10-11 09:49:31 +10:00
Daniel Pouzzner
daef866313
Merge pull request #8053 from danielinux/fix-no-malloc
...
Allow building with WOLFSSL_NO_MALLOC again
2024-10-10 16:27:28 -05:00
JacobBarthelmeh
c49f571a79
Merge pull request #8059 from douzzer/20241010-WOLFCRYPT_TEST_LINT
...
20241010-WOLFCRYPT_TEST_LINT
2024-10-10 14:16:51 -06:00
Jack Tjaden
864eaaeef9
Added more discriptive README for NDS and MelonDS C-flag
2024-10-10 12:50:09 -06:00
Daniel Pouzzner
bcc65a09ca
wolfcrypt/test/test.c: harmonize gating for hpke_test() and berder_test(), so that --enable-all-crypto passes -DWOLFCRYPT_TEST_LINT.
2024-10-10 01:06:05 -05:00
Daniel Pouzzner
b5475f3d81
wolfcrypt/test/test.c: add WOLFSSL_WOLFCRYPT_TEST_LINT, allowing testing for -Wunused-function in enable-all configurations. No functional changes, but several missing or inconsistent gates fixed.
2024-10-10 00:25:39 -05:00
Daniel Pouzzner
8b2a26a691
Merge pull request #8054 from bandi13/fixUncalledTest
...
Test was never called
2024-10-10 00:00:07 -05:00
John Safranek
8d3ed05272
Merge pull request #8058 from douzzer/20241009-wolfcrypt_test-FIPS-SMALL_STACK
...
20241009-wolfcrypt_test-FIPS-SMALL_STACK
2024-10-09 17:52:52 -07:00
Daniel Pouzzner
12ba4355d2
configure.ac and wolfssl/wolfcrypt/settings.h: define WOLFSSL_FIPS_READY for fips=ready, WOLFSSL_FIPS_DEV for fips=dev, and add predefined override FIPS version values when defined(WOLFSSL_FIPS_READY) || defined(WOLFSSL_FIPS_DEV).
2024-10-09 17:58:31 -05:00
Daniel Pouzzner
74d14d9687
wolfcrypt/test/test.c: fix for FIPS <6.0.0 with WOLFSSL_SMALL_STACK.
2024-10-09 16:40:48 -05:00
Aidan Garske
64a359c501
Merge pull request #8057 from gojimmypi/workflow-update
2024-10-09 13:41:28 -07:00
Chris Conlon
7b805d7a7d
Add lock around static ECC ecc_oid_cache
2024-10-09 14:35:14 -06:00
gojimmypi
e81ae7bcb6
Run win-csharp-test only for wolfssl owner
2024-10-09 11:14:28 -07:00
Daniel Pouzzner
10e449dc00
Merge pull request #8056 from bandi13/fixCoverity
...
Add several fixes to coverity scan
2024-10-09 10:59:41 -05:00
Andras Fekete
c8840a53ad
Add several fixes to coverity scan
2024-10-09 11:51:56 -04:00
Andras Fekete
d3f143aa2a
Test was never called
2024-10-09 09:20:17 -04:00
Daniele Lacamera
a3f6babfdc
Move heap variable to all sha implementations
2024-10-09 15:11:42 +02:00
Daniele Lacamera
06195a2e2a
fix unused variables
2024-10-09 14:06:38 +02:00
Daniele Lacamera
56a96ba609
Allow compiling aes.c with WOLFSSL_NO_MALLOC
2024-10-09 13:55:42 +02:00
Daniele Lacamera
43574e2255
Allow building with WOLFSSL_NO_MALLOC again
2024-10-09 13:44:03 +02:00
Daniele Lacamera
a23d384e06
Improve guards to build with -mthumb-interwork
2024-10-09 12:41:55 +02:00
jordan
244fff844f
acert: pacify c++ style comment warning.
2024-10-08 21:21:25 -05:00
jordan
bed680a96c
acert: line length.
2024-10-08 20:47:49 -05:00
jordan
deda512598
acert: fix unused store error.
2024-10-08 17:05:53 -05:00
jordan
410e2f148c
Missing free call.
2024-10-08 16:17:16 -05:00
jordan
052cf77233
acert: fix defines, cleanup, more testing.
2024-10-08 16:11:46 -05:00
Daniel Pouzzner
ce9d0e236c
Merge pull request #8047 from ColtonWilley/x509_store_free_ref
...
Free X509 store ref on store free
2024-10-08 15:25:16 -05:00
Daniel Pouzzner
e6dac68ce3
Merge pull request #7966 from cconlon/x509CheckHostLeftWildcardOnly
...
Add left-most wildcard matching support to X509_check_host()
2024-10-08 15:17:27 -05:00
Daniel Pouzzner
4a37947d8f
Merge pull request #3166 from dgarske/csharp_wolfcrypt
...
wolfCrypt CSharp Wrapper
2024-10-08 14:52:40 -05:00
David Garske
e4f4274b4a
Fix AesSivCipher heap hint on cleanup.
2024-10-08 12:11:15 -07:00
David Garske
4753e1c32e
Use byte for isAllocated bit-field. Cleanup some of the "heap" hint logic.
2024-10-08 10:37:45 -07:00
Chris Conlon
f878220b81
add WOLFSSL_LEFT_MOST_WILDCARD_ONLY support to X509_check_host()
2024-10-08 10:38:14 -06:00
Colton Willey
b4146bad18
Free X509 store ref on store free
2024-10-07 13:09:47 -07:00
Eric Blankenhorn
cd5ddeb1c5
Clear ctx in wolfSSL_EVP_DigestInit
2024-10-07 14:20:50 -05:00
David Garske
bf29b68600
Merge pull request #8045 from rizlik/sniffer-fix
...
sniffer: set ssl->curSize before invoking Do* routines
2024-10-07 07:38:27 -07:00
Marco Oliverio
92faa915e4
sniffer: set ssl->curSize before invoking Do* routines
...
commit 99a99e3d6e changes DoApplication to
use ssl->curSize as the size of the current decrypted record. Fix
sniffer code to set this value.
2024-10-07 08:56:35 +00:00
David Garske
59389a0ef5
Fix possible AES leaks detected with sanitizer and clang-tidy.
2024-10-05 11:52:22 -07:00
David Garske
b9de3bbf1a
Fixes for memory leaks in test.c with wc_AesNew and wc_HashNew.
2024-10-05 11:44:59 -07:00
David Garske
dbd3484fdc
Fix for issue with wc_HashAlg being a union.
2024-10-05 11:44:59 -07:00
David Garske
0bb41e1eb4
Resolve hash new leak due to improper heap hint check. Make sure isAllocated is initialized to 0.
2024-10-05 11:44:58 -07:00
David Garske
7989dd8713
Refactor the AES ECB/Direct, CBC and CTR tests.
2024-10-05 11:44:58 -07:00
Aidan Garske
e10c943bf3
wolfCrypt CSharp Wrapper:
...
* Adds RNG, ECC(ECIES and ECDHE), RSA, ED25519/Curve25519, AES-GCM, and Hashing to the CSharp wrapper.
* Adds GitHub action for building the CSharp wrapper solution and running wolfCrypt test and a TLS server/client example.
* Adds "new" API's for wolfCrypt for platforms that cannot tolerate the structs directly.
* Fixes for several scan-build warnings.
2024-10-05 11:44:58 -07:00
David Garske
c230e10f4a
Merge pull request #8044 from douzzer/20241004-wc_static_assert
...
20241004-wc_static_assert
2024-10-05 09:11:11 -07:00
Hideki Miyazaki
5105082a1f
addressed review comments
2024-10-05 15:25:34 +09:00
Hideki Miyazaki
b84a4e1c8d
fix pr unit test
2024-10-05 15:25:34 +09:00
Hideki Miyazaki
7a1d0e0dc8
addressed review comment
2024-10-05 15:25:34 +09:00
Juliusz Sosinowicz
16dc67f421
SendTls13Certificate: set variables directly instead of incrementing
2024-10-05 15:25:32 +09:00
Juliusz Sosinowicz
29e27889ee
TLSX_CSR_InitRequest_ex: decrement csr->requests when reusing
2024-10-05 15:25:08 +09:00
Hideki Miyazaki
dab764a08e
fix pr test
2024-10-05 15:25:08 +09:00
Hideki Miyazaki
69e390f8b9
works OCSP Stapling with TLS1.3 like OCSPv2Multi
2024-10-05 15:25:03 +09:00
Daniel Pouzzner
e944967731
wolfssl/wolfcrypt/types.h: add WC_NO_STATIC_ASSERT path, and add C89-compatible live fallback definition for wc_static_assert().
...
wolfssl/internal.h: refactor WOLFSSL_ASSERT_EQ() and WOLFSSL_ASSERT_SIZEOF_GE() to use wc_static_assert(), and drop unused WOLFSSL_ASSERT_TEST() and WOLFSSL_ASSERT_SIZEOF_TEST().
src/ssl_crypto.c and wolfcrypt/src/evp.c: refactor ad hoc asserts in wolfSSL_DES_ecb_encrypt(), wolfSSL_CRYPTO_cts128_decrypt(), and wolfSSL_EVP_DigestInit(), to use wc_static_assert().
2024-10-04 21:11:25 -05:00
Daniel Pouzzner
a25c0244a7
wolfssl/wolfcrypt/types.h: refactor static_assert*() as wc_static_assert*() to avoid conflicts with target-native static_assert(), and add additional coverage for C23 and MSVC C11.
...
wolfcrypt/test/test.c: in render_error_message(), in tests for strerror_r(), test for __USE_GNU.
2024-10-04 16:41:33 -05:00
András Fekete
4962180a93
Merge pull request #7726 from embhorn/coverity-workflow
...
Add Coverity scan workflow
2024-10-04 14:06:01 -04:00
Eric Blankenhorn
f4b603fa4e
test cron 2xd
2024-10-04 12:37:27 -05:00
Eric Blankenhorn
032ab3b57e
Add Coverity scan workflow
2024-10-04 12:37:26 -05:00
JacobBarthelmeh
898815f11b
Merge pull request #8042 from douzzer/20241004-WOLFSSL_ARM_ARCH_7M
...
20241004-WOLFSSL_ARM_ARCH_7M
2024-10-04 10:15:41 -06:00
Daniel Pouzzner
7ff3b9b79d
wolfssl/wolfcrypt/settings.h: add setup for WOLFSSL_ARM_ARCH_7M.
2024-10-04 10:04:30 -05:00
Daniel Pouzzner
2e539ef70c
Merge pull request #7983 from philljj/tiny_dilithium_cleanup
...
dilithium: small cleanup to support wolfboot.
2024-10-03 23:37:11 -05:00
Daniel Pouzzner
f1e6dd2bac
Merge pull request #8037 from gojimmypi/pr-espressif-benchmark
...
Improve benchmark for Espressif devices
2024-10-03 23:36:27 -05:00
Daniel Pouzzner
ea4d6c00f6
Merge pull request #8040 from SparkiDev/kyber_arm32_asm_base
...
Kyber ARM32 ASM: add assembly using base instructions
2024-10-03 23:24:45 -05:00
Sean Parkinson
f7afc47d98
Kyber ARM32 ASM: add assembly using base instructions
...
Support ARMv4 up to ARMv8.
Base instructions only - faster implemenation will use NEON.
2024-10-04 11:06:18 +10:00
jordan
c3410f2cb8
dilithium: support building dilithium with wolfboot.
2024-10-03 16:38:12 -05:00
David Garske
d0d802a2df
Merge pull request #8038 from SparkiDev/sp_math_ppc_li_fix
...
SP Maths: PowerPC ASM fix
2024-10-03 11:03:31 -07:00
David Garske
afe5209427
Merge pull request #7706 from SparkiDev/kyber_thumb2_asm
...
Kyber ASM ARMv7E-M/ARMv7-M: added assembly code
2024-10-03 10:56:42 -07:00
Sean Parkinson
0668c6ea5d
Merge pull request #8039 from douzzer/20241002-fix-for-cppcheck-force-source
...
20241002-fix-for-cppcheck-force-source
2024-10-03 20:57:09 +10:00
Sean Parkinson
d2047986d9
Kyber ASM ARMv7E-M/ARMv7-M: added assembly code
...
Improved performance by reworking kyber_ntt, kyber_invtt,
kyber_basemul_mont, kyber_basemul_mont_add, kyber_rej_uniform_c to be
in assembly.
Replace WOLFSSL_SP_NO_UMAAL with WOLFSSL_ARM_ARCH_7M
2024-10-03 18:11:31 +10:00
Daniel Pouzzner
b81cc50a70
src/internal.c: in ProcessReplyEx() in the verifyMessage case, refactor some gating/conditionalization around ATOMIC_USER, HAVE_ENCRYPT_THEN_MAC, atomicUser, and ssl->options.startedETMRead, to avoid "Logical disjunction always evaluates to true" from cppcheck incorrectLogicOperator (via multi-test cppcheck-force-source) (warned code introduced by 99a99e3d6e).
2024-10-02 19:19:39 -05:00
Sean Parkinson
695914ed33
SP Maths: PowerPC ASM fix
...
The instruction 'li' is a pseduo instruction for 'load immediate'.
With some compilers, the immediate was interpretted R0[0].
Change to use XOR instead.
2024-10-03 09:00:06 +10:00
Daniel Pouzzner
e814d1baea
Merge pull request #8016 from SparkiDev/dilithium_draft_final_fix
...
Dilithium: Final and draft available in one build
2024-10-02 14:02:00 -05:00
Daniel Pouzzner
24d1b11993
Merge pull request #7988 from gasbytes/fix-conversion
...
Fix Wconversion in the tls* and api/test* files
2024-10-02 12:26:38 -05:00
gojimmypi
cd6bea852b
Improve benchmark for Espressif devices
2024-10-02 09:54:48 -07:00
Reda Chouk
ea852c1c67
missing argument
2024-10-02 17:21:50 +02:00
Reda Chouk
10f0885d88
Merge branch 'master' into fix-conversion
2024-10-02 17:14:06 +02:00
Sean Parkinson
50bbdbbe42
Dilithium: Final and draft available in one build
...
Make draft version of ML-DSA compiled in with final.
Use WC_ML_DSA_44_DRAFT, WC_ML_DSA_65_DRAFT and WC_ML_DSA_87_DRAFT for
the level to get the draft implementation.
2024-10-02 22:23:25 +10:00
Daniel Pouzzner
925fbf3bf7
Merge pull request #8034 from philljj/acert_fix_staticmem_build
...
acert: correct XFREE call.
2024-10-01 23:09:21 -05:00
jordan
1690ad7366
acert: correct XFREE call.
2024-10-01 21:57:53 -04:00
Sean Parkinson
ac788ec40d
Merge pull request #7995 from julek-wolfssl/dtls12-cid
...
Implement DTLS 1.2 Connection ID (CID)
2024-10-02 09:00:59 +10:00
Sean Parkinson
b8dff12e06
Merge pull request #8033 from douzzer/20241001-fixes
...
20241001-fixes
2024-10-02 07:50:40 +10:00
Daniel Pouzzner
a04871f153
examples/pem/pem.c: fix double-free introduced in 65853a41b9;
...
configure.ac and src/include.am: add ENABLED_ARM_THUMB, BUILD_ARM_THUMB, BUILD_ARM_NONTHUMB, ENABLED_ARM_64, BUILD_ARM_64, ENABLED_ARM_32. and BUILD_ARM_32, and use them to gate building of ARM asm files, to fix "ISO C forbids an empty translation unit" warnings (the warning only affects inline asm files, but the gating is deployed more widely).
2024-10-01 16:03:37 -05:00
Reda Chouk
666e658398
trailing spaces and overlong lines fixes
2024-10-01 16:28:31 +02:00
David Garske
59279515f4
Merge pull request #8030 from gojimmypi/pr-fix-thread_local_start
...
Espressif _thread_local_start and _thread_local_end fix
2024-10-01 06:49:06 -07:00
Reda Chouk
3193ecb2c3
fixed Wconversion in the api.c file
2024-10-01 15:07:59 +02:00
Sean Parkinson
f15700f1f6
Merge pull request #8031 from douzzer/20240930-clang-tidy
...
20240930-clang-tidy
2024-10-01 22:38:18 +10:00
gojimmypi
75a676bc7e
Espressif _thread_local_start and _thread_local_end fix
2024-10-01 03:19:31 -07:00
Marco Oliverio
7e69c2049b
dtls cid: address reviewer's comments
2024-10-01 06:45:37 +00:00
Daniel Pouzzner
65853a41b9
fixes, coddling, and suppressions for clang-tidy complaints:
...
examples/pem/pem.c: fix stdio stream leaks.
src/ssl.c and src/ssl_load.c: suppress concurrency-mt-unsafe around getenv(). getenv() is threadsafe as long as no threads putenv() or setenv().
wolfssl/openssl/asn1.h: add parentheses to fix bugprone-macro-parentheses in ASN1_EX_TEMPLATE_TYPE(), and suppress misfiring bugprone-macro-parentheses around IMPLEMENT_ASN1_FUNCTIONS().
2024-09-30 23:19:49 -05:00
JacobBarthelmeh
984dd9146f
Merge pull request #8005 from ColtonWilley/copy_key_option
...
New option to always copy over key to SSL object
2024-09-30 14:20:07 -06:00
JacobBarthelmeh
ee7f02bbd6
Merge pull request #8004 from SparkiDev/dilithium_fixes_1
...
Dilithium: fixes
2024-09-30 10:01:16 -06:00
JacobBarthelmeh
113a61c11e
Merge pull request #8025 from douzzer/20240927-fixes2
...
20240927-fixes2
2024-09-30 09:43:12 -06:00
David Garske
2db2bedd5f
Merge pull request #8027 from SparkiDev/kyber_original_fix
...
Kyber original: fix to work
2024-09-30 07:58:30 -07:00
David Garske
47add7e9e2
Merge pull request #8020 from SparkiDev/arm32_base_chacha20_poly1305
...
ARM32 ChaCha20, Poly1305: assembly code
2024-09-30 06:53:37 -07:00
Sean Parkinson
bb67069e4a
Kyber original: fix to work
...
Encapsulate the message (hash of rand) for original.
Final of FIPS 203 uses rand.
2024-09-30 22:05:26 +10:00
Sean Parkinson
e4301bc554
ARM32 generated files: fix line lengths
...
Generated ARM32 assembly files no longer have lines with more than 80
characters.
2024-09-30 08:50:31 +10:00
Daniel Pouzzner
60c2499602
wolfssl/wolfcrypt/types.h: when defining fallback do-nothing SAVE_VECTOR_REGISTERS2(), also define SAVE_VECTOR_REGISTERS2_DOES_NOTHING, and likewise for fallback CAN_SAVE_VECTOR_REGISTERS, define CAN_SAVE_VECTOR_REGISTERS_ALWAYS_TRUE;
...
wolfcrypt/src/aes.c:
* when SAVE_VECTOR_REGISTERS2_DOES_NOTHING, define do-nothing VECTOR_REGISTERS_PUSH and VECTOR_REGISTERS_POP, to mollify Coverity CONSTANT_EXPRESSION_RESULT;
* in AesGcmDecryptUpdate_aesni(), omit " && (c != NULL)" clause from computation of endA argument to AesGcmAadUpdate_aesni(), to mollify Coverity FORWARD_NULL (impermissible nullness is already checked and BAD_FUNC_ARGed by the sole caller, wc_AesGcmDecryptUpdate());
wolfcrypt/src/misc.c: add readUnalignedWord64(), writeUnalignedWord64(), readUnalignedWords64(), and writeUnalignedWords64(), for safe word64 access to possibly-unaligned data;
wolfcrypt/src/wc_kyber_poly.c: use readUnalignedWords64() and readUnalignedWord64() to mitigate sanitizer-reported "load of misaligned address".
2024-09-27 17:15:53 -05:00
JacobBarthelmeh
b96e73f9ed
Merge pull request #7936 from gojimmypi/pr-add-espressif-esp-tls-cert-bundle
...
Add wolfSSL esp-tls and Certificate Bundle Support
2024-09-27 15:22:49 -06:00
JacobBarthelmeh
3178ce60c6
Merge pull request #8022 from douzzer/20240927-fixes
...
20240927-fixes
2024-09-27 10:48:27 -06:00
Daniel Pouzzner
794f0d8d19
src/pk.c: add missing "keySz = padded_keySz" in _DH_compute_key() ct cleanup path.
...
wolfcrypt/src/wc_kyber_poly.c: add SAVE_VECTOR_REGISTERS2()...RESTORE_VECTOR_REGISTERS() wrappers for AVX2 implementations.
src/bio.c and src/ssl.c: add several missing WC_NO_ERR_TRACE()s, and tweak several returns to generate error traces.
2024-09-27 00:28:45 -05:00
Colton Willey
3d9a4ccddc
Use GetShortInt instead for CRL number extension parsing
2024-09-26 15:43:30 -07:00
JacobBarthelmeh
dd2186f68a
Merge pull request #8021 from bigbrett/cmake-curl-uintptr_t-fix
...
fix cmake build error for curl builds
2024-09-26 15:31:07 -06:00
Colton Willey
6414cf61a7
Update comments for new flags in settings.h
2024-09-26 13:18:06 -07:00
David Garske
2285c02f1c
Merge pull request #7998 from SparkiDev/kyber_aarch64_asm
...
Kyber Aarch64: assembly implementations of functions
2024-09-26 11:59:06 -07:00
Brett Nicholas
32ebaea158
add uintptr_t to config.h fixing curl cmake build error
2024-09-26 10:31:31 -06:00
András Fekete
a1a3a0b04f
Merge pull request #7871 from gojimmypi/pr-repo-owner-check
...
Add conditional repository_owner to workflow
2024-09-26 12:18:58 -04:00
David Garske
46f6a60c9e
Merge pull request #8019 from JacobBarthelmeh/nds
...
minor adjustments for NDS port
2024-09-26 08:58:43 -07:00
Sean Parkinson
2323a5cf59
ARM32 ChaCha20, Poly1305: assembly code
...
Add assembly code for ChaCha20 and Poly1305 on ARM32 when no NEON
available.
2024-09-26 20:24:58 +10:00
gojimmypi
2a354905cb
Add wolfSSL esp-tls and Certificate Bundle Support, improve esp32_mp RSA
2024-09-25 19:42:21 -07:00
Sean Parkinson
de657787cf
Kyber Aarch64: assembly implementations of functions
...
Aarch64 assembly implementation of Kyber functions.
SHA-3 assembly implementations when not hardware crypto.
2024-09-26 09:10:05 +10:00
David Garske
e26ac5e122
Merge pull request #8018 from JacobBarthelmeh/ci
...
initialize values for -Og test
2024-09-25 15:25:03 -07:00
JacobBarthelmeh
45b88048c2
make macro unique to wolfSSL
2024-09-25 15:59:57 -06:00
JacobBarthelmeh
4893017005
feature support will be listed in the next release notes
2024-09-25 15:54:59 -06:00
JacobBarthelmeh
d72c0b372c
Merge pull request #7990 from buchstabenwurst/master
...
Add support for (DevkitPro)libnds
2024-09-25 15:52:34 -06:00
JacobBarthelmeh
bea285c8ef
initialize values for -Og test
2024-09-25 14:57:09 -06:00
JacobBarthelmeh
efd4127b84
Merge pull request #8013 from douzzer/20240924-static_assert-MSVC
...
20240924-static_assert-MSVC
2024-09-25 11:55:05 -06:00
JacobBarthelmeh
79b5ec86f6
Merge pull request #8015 from gojimmypi/pr-mp_read_radix
...
gate test mp_read_radix on OPENSSL_EXTRA or !NO_DSA or HAVE_ECC
2024-09-25 11:35:57 -06:00
JacobBarthelmeh
2328a7e407
Merge pull request #8017 from philljj/misc_cleanup
...
misc cleanup: extra spaces, typos.
2024-09-25 11:26:31 -06:00
JacobBarthelmeh
4db1605914
Merge pull request #8012 from rizlik/dtls13-either-side
...
dtls13: support either side DTLSv1_3 method
2024-09-25 11:25:19 -06:00
JacobBarthelmeh
67b0c4d03f
Merge pull request #8009 from philljj/asn_cleanup
...
asn: cleanup around edPubKeyASN.
2024-09-25 10:09:40 -06:00
jordan
e5109b3f41
misc cleanup: extra spaces, typos.
2024-09-25 09:51:48 -05:00
Brett Nicholas
7592241a46
Merge pull request #8007 from billphipps/fix_cmac_cryptocb
...
Update to separate CMAC and AES conditional compiles. Correct update.
2024-09-25 08:43:27 -06:00
gojimmypi
393072037a
gate test mp_read_radix on OPENSSL_EXTRA || !NO_DSA || HAVE_ECC
2024-09-24 17:23:04 -07:00
Bill Phipps
60dbe38226
Update cmac.c to eliminate extra spaces
2024-09-24 18:34:19 -04:00
Bill Phipps
13b26bc46b
Update cryptocb.c to fix comment
2024-09-24 18:27:58 -04:00
Bill Phipps
60e1c03e46
Update cmac.h to move CmacType down for build compatibility
2024-09-24 18:23:26 -04:00
Daniel Pouzzner
267add1fb3
wolfssl/wolfcrypt/types.h: in static_assert setup section, test for _MSVC_LANG >= 201103L alongside __cplusplus >= 201103L.
2024-09-24 17:14:33 -05:00
JacobBarthelmeh
72711b4e15
Merge pull request #8010 from res0nance/win-arm64-support
...
Add ARM64 to Visual Studio Project
2024-09-24 14:34:42 -06:00
Daniel Pouzzner
f3e41aaf3a
Merge pull request #8011 from ejohnstown/revert-small-stack-fp
...
Revert "FP SmallStack Fix"
2024-09-24 15:24:22 -05:00
JacobBarthelmeh
6b806f8bda
Merge pull request #8008 from bandi13/fixFipsCheck
...
Fix '--depth=1' repos
2024-09-24 13:30:12 -06:00
Brett Nicholas
967dc443fa
remove trailing whitespace
2024-09-24 12:58:01 -06:00
jordan
c6124d573a
asn: tiny peer review cleanup.
2024-09-24 13:01:13 -05:00
Bill Phipps
8aa63e3aad
One more time to quiet clang tidy
2024-09-24 13:43:56 -04:00
Bill Phipps
5e1db686e1
Update logic to avoid clang-tidy warning.
2024-09-24 13:14:00 -04:00
Marco Oliverio
76f71a31f1
dtls13: support either side DTLSv1_3 method
2024-09-24 16:56:02 +00:00
Bill Phipps
35442d27b5
Fixed overlong lines. Thanks clang-tidy
2024-09-24 12:48:54 -04:00
Joshua Okeleke
6c5b174e51
Replace dummy iovec with #define NO_WRITEV
2024-09-24 18:37:10 +02:00
John Safranek
17261467a6
Revert "FP SmallStack Fix"
...
This reverts commit 47e51400bb .
Turns out we don't want to put those fp_ints on the stack unless
absolutely necessary.
2024-09-24 09:19:43 -07:00
Bill Phipps
0d158fc663
Updates due to peer review
2024-09-24 12:06:19 -04:00
Joshua Okeleke
1896b47399
Change comment style
2024-09-24 16:35:29 +02:00
Marco Oliverio
9dccd66a3a
address review: better guarding in test
2024-09-24 12:54:15 +00:00
res0nance
62c6a3d892
ci: add Win32 and ARM64 windows CI
2024-09-24 19:35:39 +08:00
res0nance
34224d84d3
win: add arm64 to wolfssl64.sln
2024-09-24 19:26:05 +08:00
res0nance
665fd89c55
win: add arm64 to sslsnifftest.vcxproj
2024-09-24 18:18:10 +08:00
res0nance
4f856773cf
win: add arm64 to server.vcxproj
2024-09-24 18:15:40 +08:00
res0nance
8bf196f32c
win: add arm64 to client.vcxproj
2024-09-24 18:11:42 +08:00
res0nance
45d51bfe49
win: add arm64 to echoserver.vcxproj
2024-09-24 18:07:41 +08:00
res0nance
28cebe8c7e
win: add arm64 to echoclient.vcxproj
2024-09-24 18:04:07 +08:00
res0nance
f599a0a7c3
win: add arm64 to sslsniffer.vcxproj
2024-09-24 17:59:00 +08:00
res0nance
6735fcf695
win: add arm64 to testsuite.vcxproj
2024-09-24 17:55:44 +08:00
res0nance
112a4ddbad
win: add arm64 to wolfssl.vcxproj
2024-09-24 17:25:26 +08:00
jordan
0f646b6e4b
asn: cleanup around edPubKeyASN.
2024-09-23 23:24:36 -05:00
Colton Willey
720e24209a
Updates for doxygen and review comments
2024-09-23 13:29:41 -07:00
Andras Fekete
09b5362ed8
Fix '--depth=1' repos
...
When the repo was checked out as a shallow copy, we need to unshallow so FIPS builds can successfully find all the required tags and branches.
2024-09-23 16:21:50 -04:00
Bill Phipps
c16ebaeb47
Update to seperate CMAC and AES conditional compiles. Correct update.
2024-09-23 15:33:52 -04:00
Colton Willey
e5022e3ef0
Fix broken endif
2024-09-23 12:11:04 -07:00
Colton Willey
183aef241c
CRL improvements, add parsing for CRL number, do not allow CRL duplicates, add callback for when CRL entry is updated.
2024-09-23 11:52:39 -07:00
Colton Willey
1a4b821c64
Add pthread link for liboqs testing
2024-09-23 11:46:19 -07:00
gojimmypi
27adc66cca
Add conditional repository_owner to workflow, remove socat strategy
2024-09-23 11:30:58 -07:00
Colton Willey
cad2bbd7a7
Add NULL checks on key copy
2024-09-23 10:18:23 -07:00
Colton Willey
634e547fba
Initial implementation of new option to always copy over key to SSL ctx
2024-09-23 10:04:33 -07:00
Sean Parkinson
67528f91b3
Dilithium: fixes
...
Fixes to hint error dectection.
Fix public key decode to fail when DER length is zero for the public key
data.
2024-09-23 09:05:17 +10:00
Daniel Pouzzner
bc6881974d
Merge pull request #8001 from ejohnstown/ecc-test-fix
...
ECC Test Fix
2024-09-20 20:53:28 -05:00
John Safranek
735c0f6b3a
ECC Test Fix
...
The ECC key generation test was failing due not using large enough of a
buffer. Fixed to use a better size.
1. Set the shared digest/sig buffer size in
_ecc_pairwise_consistency_test() to the maximum possible based on the
math in wc_ecc_sig_sz().
2024-09-20 17:25:21 -07:00
David Garske
a9cc880f65
Merge pull request #7993 from miyazakh/renesas_rx65n_rsk_update
...
Update TSIP driver version to v1.21 for RX65N RSK
2024-09-20 17:07:21 -07:00
David Garske
3c67abc664
Merge pull request #7954 from JacobBarthelmeh/pkcs7
...
add option to set custom SKID with PKCS7 bundle creation
2024-09-20 17:05:44 -07:00
JacobBarthelmeh
554d52b069
Merge pull request #7777 from night1rider/MAX32666-port
...
MAX32665 and MAX32666 TPU HW and ARM ASM Crypto Callback Support
2024-09-20 17:14:34 -06:00
JacobBarthelmeh
9781c1fea4
Merge pull request #7999 from douzzer/20240920-fixes
...
20240920-fixes
2024-09-20 17:01:11 -06:00
Hideki Miyazaki
3f0a17b331
Update TSIP driver version to v1.21
...
Use ASN_TEMPLATE
Extracting YEAR and MONTH from __DATE__
2024-09-21 06:23:59 +09:00
ZackLabPC
1ffcf4000b
Making HW Mutex Functions Private Api
2024-09-20 15:21:27 -06:00
JacobBarthelmeh
baab3348f4
Merge pull request #7997 from dgarske/stm32g4
...
Support for STM32G4
2024-09-20 14:05:43 -06:00
Daniel Pouzzner
55cd8a800f
FIPS v5 gating fixes:
...
configure.ac:
* fix logic in "Forcing off" test expressions, first flubbed in 19106a9510;
* fix auto-enable of compkey to exclude v5 even if v5-dev.
src/tls13.c: fix gating for HKDF _ex() variants (>=6.0, not >=5.3).
wolfcrypt/src/error.c: snip out stray spaces at start of several ECC error message strings.
wolfcrypt/test/test.c:
* in render_error_message(), use wolfSSL_ERR_reason_error_string() if available rather than wc_GetErrorString(), to render non-wolfcrypt error strings;
* in ecc_test_deterministic_k(), ecc384_test_deterministic_k(), ecc521_test_deterministic_k(), on FIPS <6.0, gate out SHA384 and SHA512 tests (FIPS v5 only supports SHA256 in wc_ecc_gen_deterministic_k());
* in cmac_test(), gate use of wc_AesCmacGenerate_ex() and wc_AesCmacVerify_ex() on >=6.0, not >=5.3.
2024-09-20 13:53:36 -05:00
ZackLabPC
9881edfabe
Crypto Callback Support for ARM ASM: AES-ECB/CBC, SHA-1/256/384/512 + Fix SP SHA CB Bug
2024-09-20 09:42:53 -06:00
night1rider
1cb324affa
Expanding mutexing and Adding in AES Callbacks for HW
2024-09-20 09:42:53 -06:00
night1rider
a7ef540344
Making so hw mutex define is not needed
2024-09-20 09:42:53 -06:00
night1rider
8f8b4e6665
Addressing Feedback, Adding Null Checks and Mutex Around TRNG
2024-09-20 09:42:53 -06:00
night1rider
fe7987f241
Adding SHA-384/512 support, Null Checks, RNG Health Test for HW, and MAA call update for MAX3266X Port.
2024-09-20 09:42:52 -06:00
night1rider
d714e55a2b
Addressing PR comments typos and cleanup and support HAVE_AES_ECB, Sha1, and Sha224
2024-09-20 09:42:52 -06:00
msi-debian
2e8cf39feb
Initial PR for MAX32665 and MAX32666 TPU HW Support
2024-09-20 09:42:52 -06:00
JacobBarthelmeh
8017c816bb
check on RNG init return with test, and make input const
2024-09-20 08:34:28 -07:00
JacobBarthelmeh
5adad7d869
fix for sanity check of null input
2024-09-20 08:34:28 -07:00
JacobBarthelmeh
ca3b1a1412
add test case
2024-09-20 08:34:28 -07:00
JacobBarthelmeh
7a23cff27f
add PKCS7 set custom SKID
2024-09-20 08:34:28 -07:00
JacobBarthelmeh
d796d8c107
Merge pull request #7994 from miyazakh/renesas_ra6m4_update
...
Update FSP version to v5.4.0 for RA6M4
2024-09-20 09:27:56 -06:00
JacobBarthelmeh
bddb83b62a
Merge pull request #7992 from ejohnstown/ecc-pct-ss
...
Small Stack ECC Pairwise Consistency Test
2024-09-20 09:13:21 -06:00
András Fekete
005a57f745
Merge pull request #7989 from billphipps/atomic_fence
...
Update to use memory_order_seq_cst instead of GCC internal for C11
2024-09-20 09:46:27 -04:00
Juliusz Sosinowicz
cf96ab22ba
Address code review
2024-09-20 15:31:01 +02:00
Juliusz Sosinowicz
99a99e3d6e
Implement DTLS 1.2 Connection ID (CID)
2024-09-20 15:31:01 +02:00
András Fekete
bbbc40dacc
Merge pull request #7996 from julek-wolfssl/move-mymemmem
...
memmem is only being used in testing so move it there
Failing test is disabled in: 5be198fa0e
2024-09-20 09:08:44 -04:00
Sean Parkinson
8768c55579
Merge pull request #7991 from douzzer/20240917-fixes
...
20240917-fixes
2024-09-20 15:20:51 +10:00
Daniel Pouzzner
5be198fa0e
.github/workflows/packaging.yml: disable broken RedHat/Fedora rpm packaging tests.
2024-09-19 17:44:27 -05:00
Daniel Pouzzner
af8feed531
Revert "wolfssl/wolfcrypt/ecc.h: fixes for more linker relocation errors in Fedora packaging test: always export ECC_API functions, but when !WOLFSSL_PUBLIC_ECC_ADD_DBL, remap them with wc_ prefixes."
...
This reverts commit a31e914b98 .
2024-09-19 17:44:08 -05:00
Daniel Pouzzner
a31e914b98
wolfssl/wolfcrypt/ecc.h: fixes for more linker relocation errors in Fedora packaging test: always export ECC_API functions, but when !WOLFSSL_PUBLIC_ECC_ADD_DBL, remap them with wc_ prefixes.
2024-09-19 17:30:44 -05:00
Daniel Pouzzner
da1b8358dc
wolfcrypt/benchmark/benchmark.c: add RSA3072 to keygen bench.
2024-09-19 17:07:19 -05:00
Daniel Pouzzner
212708e3b4
wolfssl/wolfcrypt/ecc.h and wolfcrypt/src/ecc.c: refactor ecc_sets and ecc_sets_count using accessor functions, to fix linker relocation errors in Fedora packaging test.
2024-09-19 17:03:07 -05:00
David Garske
9d24480379
Fix WOLF_CONF_AESGCM=2.
2024-09-19 14:19:39 -07:00
Daniel Pouzzner
510d6a07bf
wolfssl/wolfcrypt/types.h: dial in the __static_assert() gating+definitions, and add static_assert2().
2024-09-19 13:10:47 -05:00
David Garske
9815d9bd03
Support for STM32G4. ZD 18675
2024-09-19 10:54:29 -07:00
Juliusz Sosinowicz
d7303664b5
memmem is only being used in testing so move it there
2024-09-19 15:54:20 +02:00
Daniel Pouzzner
fbbb2b876b
wolfssl/wolfcrypt/types.h: add static_assert() definitions;
...
wolfssl/internal.h: add DTLS13_HANDSHAKE_HEADER_SZ;
src/tls13.c: in EchHashHelloInner(), use falseHeader[DTLS13_HANDSHAKE_HEADER_SZ] to fix buffer overrun;
src/dtls13.c: add static assert for DTLS13_HANDSHAKE_HEADER_SZ.
2024-09-19 01:15:42 -05:00
Hideki Miyazaki
1e0c2604dd
Update FSP version to v5.4.0 for RA6M4
...
add example keys for signing CA
Update READNE
2024-09-19 14:19:05 +09:00
Daniel Pouzzner
263cb5bf78
tests/api.c:test_Sha512_Family_Final(): fix unreachable null pointer deref reported by clang-tidy in FIPS/Async configs.
2024-09-18 17:42:05 -05:00
John Safranek
a81efc0f6f
Small Stack ECC Pairwise Consistency Test
...
1. Update the ECC PCT to use the key's heap to allocate any buffers for
the test. This is similar to how RSA does it.
2. Put the buffers on the stack if not using small stack option.
2024-09-18 15:14:52 -07:00
Daniel Pouzzner
072c5311a5
m4/ax_atomic.m4: fixes for C++ compatibility.
...
wolfssl/wolfcrypt/wc_port.h: add WOLFSSL_API attribute to wolfSSL_Atomic_Int_Init, wolfSSL_Atomic_Int_FetchAdd, and wolfSSL_Atomic_Int_FetchAdd, and add fallback definitions for them, allowing elimination of SINGLE_THREADED implementations of wolfSSL_Ref*(), and allowing ungated use of wolfSSL_Atomic_* calls in api.c.
wolfcrypt/src/dh.c: in wc_DhAgree_ct(), remove frivolous XMEMSET() and stray semicolon.
wolfcrypt/benchmark/benchmark.c: fix bench_rsaKeyGen() to skip tests of key sizes below RSA_MIN_SIZE, and add 4096 bit benchmark if RSA_MAX_SIZE is big enough.
tests/unit.h:
* adopt definitions of TEST_FAIL, TEST_SUCCESS, and TEST_SKIPPED from unit.c, remap TEST_SKIPPED from -7777 to 3, and add TEST_SUCCESS_NO_MSGS, TEST_SKIPPED_NO_MSGS, EXPECT_DECLS_NO_MSGS(), and EXPECT_FAILURE_CODEPOINT_ID, to support existing and future expected-particular-failure test cases without log noise.
* rename outer gate from CyaSSL_UNIT_H to TESTS_UNIT_H.
tests/api.c:
* use EXPECT_DECLS_NO_MSGS() in test_ssl_memio_setup(), test_ssl_memio_read_write(), and test_wolfSSL_client_server_nofail_memio(), and globally update affected expected error codes to correspond.
* use atomics for {client,server}SessRemCount{Malloc,free} to fix races in SessRemCtxCb() and SessRemSslSetupCb().
2024-09-18 16:25:26 -05:00
Joshua Okeleke
337456cc1e
Add support for (DevkitPro)libnds
2024-09-18 21:27:53 +02:00
Bill Phipps
7122001dd6
Update to use memory_order_seq_cst instead of GCC internal for C11
2024-09-18 13:48:26 -04:00
JacobBarthelmeh
b9908409d4
Merge pull request #7987 from bandi13/betterEngineFlagsFix
...
FIPS defines RSA_MIN_SIZE and users may want to override
2024-09-18 11:18:24 -06:00
JacobBarthelmeh
87dc45b938
Merge pull request #7986 from julek-wolfssl/crl-cb
...
Add crl error override callback
2024-09-18 10:43:37 -06:00
JacobBarthelmeh
46f2b21abf
Merge pull request #7985 from julek-wolfssl/curl-ci
...
Use nproc not nproc+1 threads
2024-09-18 10:35:08 -06:00
JacobBarthelmeh
ffd0fb23f7
Merge pull request #7979 from SparkiDev/sp_x86_64_no_avx_fix
...
SP x86_64 asm: check for AVX2 support
2024-09-18 10:23:12 -06:00
JacobBarthelmeh
ec8a1ba956
Merge pull request #7962 from embhorn/zd18558
...
Add cmake support for WOLFSSL_CUSTOM_CURVES
2024-09-18 10:18:38 -06:00
JacobBarthelmeh
fcb8d3ffc5
Merge pull request #7887 from kojo1/crl-pss
...
allow sigParamsSz is zero and malloc(0) to return NULL
2024-09-18 10:04:29 -06:00
JacobBarthelmeh
fb2144d290
Merge pull request #7951 from julek-wolfssl/dtls13-cid-fixes
...
DTLS 1.3 CID fixes
2024-09-18 09:38:15 -06:00
Reda Chouk
949565f156
Merge branch 'wolfSSL:master' into fix-conversion
2024-09-18 17:16:48 +02:00
Reda Chouk
be88ddda15
more Wconversion fixes: api/test* block
2024-09-18 16:53:39 +02:00
Andras Fekete
bd77ee4f37
FIPS defines RSA_MIN_SIZE and users may want to override
2024-09-18 10:28:10 -04:00
Juliusz Sosinowicz
ae6c872797
Add crl error override callback
2024-09-18 11:58:53 +02:00
Juliusz Sosinowicz
84c80b4c0f
make mymemmem available for linking
2024-09-18 10:35:29 +02:00
Juliusz Sosinowicz
1e75a2367c
Address code review
2024-09-18 10:35:29 +02:00
Juliusz Sosinowicz
74ac2cd07d
dtls 1.3: pad plaintext when too short for record header protection
2024-09-18 10:35:29 +02:00
Juliusz Sosinowicz
29f51b6245
CheckcipherList: Check Cipher minor to detect TLS 1.3 ciphersuite
2024-09-18 10:35:29 +02:00
Juliusz Sosinowicz
4a26af0dfa
dtls 1.3: Add cid size to output buffer length
2024-09-18 10:35:29 +02:00
Juliusz Sosinowicz
ee2b77c0bd
Move manual memio to api.c
2024-09-18 10:35:29 +02:00
Juliusz Sosinowicz
6d5fefde4a
dtls 1.3: Check header length before copying
2024-09-18 10:35:29 +02:00
Juliusz Sosinowicz
8ce6f17144
Add dtls 1.3 cid api test
2024-09-18 10:35:29 +02:00
Juliusz Sosinowicz
c166b9dd77
Use nproc not nproc+1 threads
2024-09-18 10:28:28 +02:00
JacobBarthelmeh
c3900470aa
Merge pull request #7982 from bandi13/fixEngineFlags
...
Engine needs to have a RSA_MIN_SIZE=1024
2024-09-17 17:03:11 -06:00
Daniel Pouzzner
ef6f1562d6
Merge pull request #7980 from ejohnstown/small-stack-fp
...
FP SmallStack Fix
2024-09-17 17:28:46 -05:00
Andras Fekete
41b3a729d2
Engine needs to have a RSA_MIN_SIZE=1024
2024-09-17 17:36:37 -04:00
John Safranek
47e51400bb
FP SmallStack Fix
...
The function _fp_exptmod_nct() is using WOLFSSL_NO_MALLOC to guard
using stack allocation vs malloc. It's twin function _fp_exptmod_ct()
is using WOLFSSL_SMALL_STACK for this. This is causing inappropriate use
of malloc() in a small stack environment. The no-malloc case will also
be kept so static memory and no-malloc fix still works.
1. Change the guards for `#ifndef WOLFSSL_NO_MALLOC` in the function
`_fp_exptmod_nct()` to `#if defined(WOLFSSL_SMALL_STACK) &&
!defined(WOLFSSL_NO_MALLOC)`.
2024-09-17 10:55:11 -07:00
Sean Parkinson
aa41e09937
SP x86_64 asm: check for AVX2 support
...
Check for AVX2 as well as BMI2 and ADX.
Some virtual machines may not have AVX2 with the others.
2024-09-17 14:14:27 +10:00
Sean Parkinson
5ef617a75a
Merge pull request #7978 from douzzer/20240916-wc_DhAgree_ct-sp-math
...
20240916-wc_DhAgree_ct-sp-math
2024-09-17 09:38:07 +10:00
Daniel Pouzzner
04c781ad9b
wolfcrypt/src/dh.c: in wc_DhAgree_ct(), implement failsafe constant-time key size fixup, to work around sp-math constant-time key clamping.
...
also fix a -Wunused in src/ssl_load.c:DataToDerBuffer() teased out by configuration permutations.
2024-09-16 17:33:25 -05:00
András Fekete
9666394b73
Merge pull request #7977 from billphipps/have_rsa_fix
...
Update to remove HAVE_RSA references. Correct NO_MALLOC RSA test bug.
2024-09-16 16:26:26 -04:00
Bill Phipps
b4a491de12
Add missing guard to api.c
2024-09-16 14:03:31 -04:00
Bill Phipps
92f3a808b0
Update to remove HAVE_RSA references. Correct NO_MALLOC RSA test bug.
2024-09-16 13:29:38 -04:00
Sean Parkinson
e6b466dd71
Merge pull request #7923 from embhorn/rsa2048_min
...
Set RSA_MIN_SIZE default to 2048 bits
2024-09-16 21:38:19 +10:00
Daniel Pouzzner
52030f182b
Merge pull request #7972 from miyazakh/renesas_tsip_update_
...
Renesas TSIP version update
2024-09-14 00:41:19 -05:00
Daniel Pouzzner
990d38a068
Merge pull request #7974 from dgarske/noasn
...
Support for NO_ASN when wildcard *.c is used
2024-09-14 00:34:15 -05:00
Daniel Pouzzner
80f3b0d3d8
Merge pull request #7926 from philljj/x509_acert_support
...
x509 attribute cert support
2024-09-14 00:30:29 -05:00
Daniel Pouzzner
4545a9b4a2
Merge pull request #7960 from night1rider/mmcau-DesEcb
...
DES ECB using mmcau HW Library, and DES ECB basic test
2024-09-14 00:07:18 -05:00
David Garske
0d5659ff2d
Merge pull request #7975 from douzzer/20240913-fixes
...
20240913-fixes
2024-09-13 17:20:36 -07:00
Daniel Pouzzner
84f0800b96
configure.ac:
...
* set DEFAULT_ENABLED_ALL_ASM=no if enable_afalg or ENABLED_32BIT;
* omit enable_srtp_kdf from enable-all-crypto if enable_afalg.
linuxkm: add GetCAByAKID to wolfssl_linuxkm_pie_redirect_table.
src/x509.c: in GenerateDNSEntryIPString(), use XMEMSET() to initialize tmpName, not = {0}, to avoid unmaskable compiler emission of memset() call.
wolfssl/openssl/ssl.h: add OPENSSL_EXTRA to an existing OPENSSL_ALL-gated section, consistent with gating of correspinding section in wolfssl/ssl.h.
wolfssl/wolfcrypt/settings.h: adopt setup for WOLFSSL_SP_NO_UMAAL from wolfssl/wolfcrypt/sp_int.h now that it's used by wolfcrypt/src/port/arm/thumb2-poly1305-asm.S.
2024-09-13 18:01:11 -05:00
Eric Blankenhorn
91e411b4b9
Set RSA_MIN_SIZE default to 2048 bits
2024-09-13 16:02:05 -05:00
David Garske
8cea8283db
Support for NO_ASN when wildcard *.c is used. Added STM32H743xx support.
2024-09-13 13:52:21 -07:00
jordan
7df446bf4e
cleanup: fix cast warning, and small cleanup.
2024-09-13 09:26:19 -05:00
jordan
7faed6cded
X509 attribute cert (acert) support.
2024-09-13 08:03:55 -05:00
Hideki Miyazaki
c49f1e22bd
Update TSIP version for RX72N and GR-ROSE
...
fix readme
2024-09-13 14:12:39 +09:00
Sean Parkinson
4fa20cb770
Merge pull request #7965 from ColtonWilley/pkcs12_use_indef_len
...
Use context specific for PKCS7 encrypted data encoding
2024-09-13 12:17:08 +10:00
Colton Willey
b0ddccc802
Change PKCS7 encrypted content encoding to use ASN_CONTEXT_SPECIFIC
2024-09-12 16:46:35 -07:00
Daniel Pouzzner
5b337e69d9
Merge pull request #7961 from philljj/fips_pkcallback
...
Update HAVE_FIPS define guard in test.h.
2024-09-12 18:18:48 -05:00
Sean Parkinson
171ab4b13a
Merge pull request #7967 from douzzer/20240910-configure-enable-all-asm-and-sp-cleanup
...
20240910-configure-enable-all-asm-and-sp-cleanup
2024-09-13 09:18:37 +10:00
Daniel Pouzzner
f6d40ad229
Merge pull request #7955 from gojimmypi/pr-espressif-port-updates
...
Update Espressif sha, util, mem, time helpers
2024-09-12 18:15:25 -05:00
Daniel Pouzzner
95c94f52d9
Merge pull request #7953 from gojimmypi/pr-espressif-settings
...
Update wolfcrypt settings.h for Espressif ESP-IDF, template update
2024-09-12 18:11:34 -05:00
Daniel Pouzzner
e9d820b730
Merge pull request #7799 from anhu/fips_macro_guard
...
Better macro guarding fix undeclared var error
2024-09-12 17:56:00 -05:00
Daniel Pouzzner
b736d78950
Merge pull request #7948 from anhu/MATCH_SUITE
...
Convert MATCH_SUITE_ERROR to OpenSSL error in wolfSSL_get_error()
2024-09-12 17:50:35 -05:00
David Garske
de3c45a02c
Merge pull request #7971 from douzzer/20240912-gating-tweaks
...
20240912-gating-tweaks
2024-09-12 15:30:11 -07:00
Daniel Pouzzner
e3301b06f6
OpenSSL coexistence tweaks
2024-09-12 16:37:41 -05:00
Daniel Pouzzner
ad7c25b409
Merge pull request #7823 from cconlon/rsaPssSignPkCallbackNoPrehashTls13
...
PK callbacks: add build option to give full data to TLS 1.3 RSA-PSS sign callback instead of hash
2024-09-12 15:40:59 -05:00
Daniel Pouzzner
eb53a95f57
wolfcrypt/src/asn.c:DecodeSingleResponse(): fix gating for "at" working var, by refactoring gating for WOLFSSL_OCSP_PARSE_STATUS sections for clarity.
2024-09-12 14:38:50 -05:00
Daniel Pouzzner
3fac3b71ca
configure.ac:
...
* move leanpsk and asn option processing early to make their results available to existing math back end selector logic;
* add -DWOLFSSL_ASN_ALL to enable-all-crypto;
* tweak asn option processing to preserve "original" value in case later configure logic wants to pivot on that.
2024-09-12 13:29:02 -05:00
Daniel Pouzzner
53c4c0095a
wolfcrypt/src/sp_cortexm.c: update from scripts#423.
2024-09-12 13:29:02 -05:00
Daniel Pouzzner
98a51029f8
configure.ac: in --enable-all-asm handler, support only x86_64 and aarch64, and enable sp-asm only for them, to avoid "ASM not available for CPU" error from sp-asm handler.
2024-09-12 13:29:01 -05:00
Daniel Pouzzner
8d0047fedf
SP: fixes for several bugprone-macro-parentheses and -Wconversions.
2024-09-12 13:29:01 -05:00
Daniel Pouzzner
428e15816f
configure.ac:
...
* in handling for enable-all-asm, add check for full Gnu C and don't auto-enable all-asm unless full Gnu C and enable-all-crypto, among other sanity checks.
* in enable-all and enable-all-crypto, correctly conditionalize several FIPS-v6-only features/algorithms.
* in FIPS v5 setup, force off SRTP and SRTP-KDF (with warnings).
2024-09-12 13:29:01 -05:00
Daniel Pouzzner
e227b2ad7d
wolfcrypt/src/sp_int.c: fix bugprone-too-small-loop-variable in _sp_mul().
2024-09-12 13:29:01 -05:00
Daniel Pouzzner
5b8e9e692f
wolfcrypt/src/siphash.c: fixes for bugprone-macro-parentheses.
2024-09-12 13:29:01 -05:00
Daniel Pouzzner
1b0ef048ba
configure.ac: move handling for enable-all-asm to precede handling for enable-all-crypto, and compute DEFAULT_ENABLED_ALL_ASM appropriately.
2024-09-12 13:29:01 -05:00
Daniel Pouzzner
430d104430
configure.ac: render warnings when FIPS setup forces off options supplied to configure.
2024-09-12 13:29:01 -05:00
Daniel Pouzzner
723d8efd1c
configure.ac: consolidate enable-all-crypto settings in one place.
2024-09-12 13:29:01 -05:00
Daniel Pouzzner
cf8f9a80fc
configure.ac: add --enable-all-asm, and add it to --enable-all and --enable-all-crypto.
2024-09-12 13:29:01 -05:00
Daniel Pouzzner
3cb66ad18a
configure.ac: update help and error messages re fastmath.
2024-09-12 13:29:01 -05:00
David Garske
20e2e33e25
Merge pull request #7939 from SparkiDev/thumb2_poly1305
...
undefined
2024-09-12 11:15:53 -07:00
András Fekete
75c6633039
Merge pull request #7970 from night1rider/XILINX-AFLAG-Fix
...
Fixing Redefine Errors/Warnings for --enable-afalg=xilinx
2024-09-12 13:04:29 -04:00
night1rider
c88f1c4d54
Fixing Redefine Errors/Warnings
2024-09-12 09:54:03 -06:00
Siert Wieringa
9e2a7b3653
Feature/multiple aes siv ads ( #7911 )
...
* Proposed new interface for AesSivEncrypt with number of ADs != 1.
* Implement AES SIV S2V computation with a number of ADs not equal to 1.
* Add Example A.1 from RFC5297 to AES SIV test vectors.
* Add tests for new AES SIV interface, and add test vectors for examples given in RFC5297.
* Include the nonce in count of maximum number of ADs.
* Addressing review comments.
* Addressing review comments: Use uppercase 'U' suffix on unsigned constant.
* Rename local variables named 'ad0' to 'ad', since the zero makes no sense, especially since in the RFC 5297 document they're actually counting the ADs from 1.
2024-09-12 07:55:29 -07:00
JacobBarthelmeh
088dfab22a
Merge pull request #7968 from douzzer/20240911-fix-whitespace
...
20240911-fix-whitespace
2024-09-11 22:18:36 -06:00
Daniel Pouzzner
4159ba0a95
.github/workflows/openldap.yml: fix whitespace.
2024-09-11 23:01:42 -05:00
Daniel Pouzzner
974506db28
Merge pull request #7933 from julek-wolfssl/openldap-action
...
Add openldap action
2024-09-11 22:54:31 -05:00
Sean Parkinson
27033c225f
Thumb-2 ChaCha, Poly1305: implemention in assembly
...
Implementation of ChaCha algorithm for ARM Thumb-2.
Implementation of Poly1305 algorithm for ARM Thumb-2.
2024-09-12 10:59:01 +10:00
Sean Parkinson
d23bfd2eb9
Merge pull request #7963 from anhu/p11nopin
...
Check for PIN before saving it.
2024-09-12 10:20:47 +10:00
Colton Willey
88d1ed7393
Modify pkcs8 pbe encryption to use indefinite length encoding, making it consistent with both old ASN code and openssl
2024-09-11 15:55:05 -07:00
Anthony Hu
246228e410
Check for PIN before saving it.
2024-09-11 14:39:03 -04:00
Eric Blankenhorn
a75c73cdef
Add cmake support for WOLFSSL_CUSTOM_CURVES
2024-09-11 10:45:21 -05:00
jordan
ea57e82395
Update HAVE_FIPS define guard in test.h.
2024-09-11 08:20:15 -05:00
Sean Parkinson
1c8f1e6921
Merge pull request #7802 from douzzer/20240725-wc_DhAgree_ct
...
20240725-wc_DhAgree_ct
2024-09-11 08:06:58 +10:00
Reda Chouk
79d3b955ed
tls.c type conversion fixed.
2024-09-10 13:51:21 +02:00
Daniel Pouzzner
213ac1ac0a
Merge pull request #7959 from billphipps/sgx_c99_fix
...
Update to use C99 instead of C11 because of lack of SGX support
2024-09-10 00:39:40 -05:00
Sean Parkinson
10c1fa2088
Merge pull request #7931 from barracuda156/powerpc-darwin
...
Fixes for PowerPC
2024-09-10 10:34:09 +10:00
Sean Parkinson
500a3b41e4
Merge pull request #7932 from barracuda156/dispatch
...
Fixes for earlier macOS
2024-09-10 10:29:45 +10:00
night1rider
e912aff7e5
DES ECB using mmcau HW Library, and DES ECB basic test
2024-09-09 15:32:21 -06:00
Daniel Pouzzner
49a680540c
add constant time DH key agreement APIs:
...
* adds wc_DhAgree_ct().
* adds wolfSSL_DH_compute_key_padded(), using wc_DhAgree_ct() if available, with fallback fixup code.
* adds unit test coverage in api.c:test_wolfSSL_DH() for expected-success calls to wolfSSL_DH_compute_key() and wolfSSL_DH_compute_key_padded().
2024-09-09 16:24:07 -05:00
Bill Phipps
232314039d
Update to use C99 instead of C11 because of lack of SGX support
2024-09-09 12:10:53 -04:00
David Garske
dbfebeac43
Merge pull request #7956 from douzzer/20240906-errcode-fixups
...
20240906-errcode-fixups
2024-09-09 08:42:46 -07:00
Reda Chouk
884b51151b
Merge branch 'fix-conversion' of github.com:gasbytes/wolfssl into fix-conversion
2024-09-09 16:06:16 +02:00
Reda Chouk
65db4b15d6
api type conversion errors, first half of tls* files
2024-09-09 16:05:15 +02:00
Daniel Pouzzner
c81c9be9ce
error code fixes:
...
* fix TLS layer to consistently use WOLFSSL_FATAL_ERROR for error retvals, rather than literal -1.
* add WC_NO_ERR_TRACE() wrapper around LENGTH_ONLY_E (it does not signify an error condition).
* refactor errcode handling for traceability in wolfSSL_DSA_do_sign(), wolfSSL_DH_size(), wolfSSL_EC_KEY_get_conv_form(), wolfSSL_d2i_DSA_SIG(), wolfSSL_DSA_do_sign(), SetDhInternal(), and wolfSSL_EC_KEY_get_conv_form().
2024-09-06 19:33:48 -05:00
gojimmypi
b57fcd0bd8
Update Espressif sha, util, mem, time helpers
2024-09-06 16:33:04 -07:00
JacobBarthelmeh
398f8c90e2
Merge pull request #7952 from douzzer/20240906-GetCAByKeyHash-wolfssl_linuxkm_pie_redirect_table
...
20240906-GetCAByKeyHash-wolfssl_linuxkm_pie_redirect_table
2024-09-06 15:37:37 -06:00
gojimmypi
282e559113
Update wolfcrypt settings.h for Espressif ESP-IDF
2024-09-06 14:24:38 -07:00
Daniel Pouzzner
e708ef3b56
Merge pull request #7946 from gasbytes/fix-conversion
...
Fix conversion in ssl* files and in internal.c
2024-09-06 16:13:55 -05:00
Anthony Hu
9e204dc023
Convert MATCH_SUITE_ERROR to OpenSSL error in wolfSSL_get_error()
2024-09-06 16:29:30 -04:00
Anthony Hu
4bd39aa52e
Better macro guarding fix undeclared var error
2024-09-06 15:15:34 -04:00
Daniel Pouzzner
87aef05f16
linuxkm: add GetCAByKeyHash to wolfssl_linuxkm_pie_redirect_table.
2024-09-06 14:15:19 -05:00
David Garske
80a63a3fce
Merge pull request #7924 from anhu/pqm4_purge
...
Get rid of pqm4 in favour our own Kyber/MLDSA implementation
2024-09-06 12:00:26 -07:00
Daniel Pouzzner
945f97636a
Merge pull request #7945 from ColtonWilley/no_external_network_test_option
...
Add option to skip all tests requiring an internet connection
2024-09-06 10:48:33 -05:00
Sean Parkinson
5f40f9a140
Thumb-2 ChaCha: implemention in assembly
...
Implementation of ChaCha algorithm for ARM Thumb-2.
2024-09-06 10:16:45 +10:00
Sean Parkinson
96e2c51f07
Merge pull request #7907 from ColtonWilley/rsa_pad_crypto_cb
...
Add new crypto callback for RSA with padding.
2024-09-06 08:48:36 +10:00
Sean Parkinson
6fc9dcae07
Merge pull request #7947 from douzzer/20240905-mp_sign_t
...
20240905-mp_sign_t
2024-09-06 08:46:23 +10:00
Colton Willey
9ad4e565fe
Restore original comments
2024-09-05 15:10:50 -07:00
Daniel Pouzzner
dcaff9dff4
Merge pull request #7944 from JacobBarthelmeh/pkcs12
...
add parsing over optional PKCS8 attributes
2024-09-05 16:55:44 -05:00
David Garske
887c5abcb1
Merge pull request #7949 from douzzer/20240905-whitespace-and-utf8-cleanup
...
20240905-whitespace-and-utf8-cleanup
2024-09-05 14:38:19 -07:00
Daniel Pouzzner
9f6a75cdfd
Merge pull request #7934 from rizlik/ocsp-get-ca-keyhash-fix
...
ocsp: search CA by key hash instead of ext key id
2024-09-05 15:03:54 -05:00
Daniel Pouzzner
a3fb5029f8
clean up trailing whitespace and misplaced CRLFs, add missing final newlines, remove stray UTF8 nonprintables (BOMs) and ASCIIfy stray homoglyphs (spaces and apostrophes), guided by expanded coverage in wolfssl-multi-test check-source-text.
2024-09-05 14:52:18 -05:00
Reda Chouk
73786112ec
review addressed
2024-09-05 20:55:00 +02:00
Daniel Pouzzner
603c03c0be
MPI: add mp_sign_t and sp_sign_t.
2024-09-05 10:37:02 -05:00
Marco Oliverio
6114691fd6
ocsp: try lookup certificate using keyHash as KeyId
...
try to lookup the certificate using the key hash as key identifier
first. If we can't find a certificate, it means that the certificate
uses another method to compute the key identifier so we need to fallback
to linear search.
2024-09-05 09:49:01 +00:00
Daniel Pouzzner
a3fea482db
Merge pull request #7914 from julek-wolfssl/gh/7825
...
Fix failing test_dtls_frag_ch
2024-09-04 19:35:06 -05:00
Colton Willey
f749ca387d
Rewrite to use test to make old mac sh versions happy
2024-09-04 16:34:09 -07:00
Colton Willey
8661cf6fee
Update no network test option to overload meaning of existing WOLFSSL_EXTERNAL_TEST instead of using new flag
2024-09-04 16:09:16 -07:00
JacobBarthelmeh
9a8573afc9
touch up pkcs8 create function and test case warning
2024-09-04 15:48:44 -06:00
Colton Willey
8aa5f463b1
Add option to skip all tests requiring an internet connection.
2024-09-04 14:48:25 -07:00
JacobBarthelmeh
2a1165460e
add parsing over optional PKCS8 attributes
2024-09-04 15:15:53 -06:00
David Garske
1c8767b4d3
Merge pull request #7942 from douzzer/20240904-fix-test_wolfSSL_EVP_sm3
...
20240904-fix-test_wolfSSL_EVP_sm3
2024-09-04 12:40:51 -07:00
Daniel Pouzzner
a31733db85
Merge pull request #7909 from SparkiDev/dilithium_fips204_draft
...
Dilithium: Support FIPS 204 Draft
2024-09-04 14:34:59 -05:00
Daniel Pouzzner
7e16016311
tests/api.c: fix expected retval from EVP_DigestInit() in test_wolfSSL_EVP_sm3() -- before 2c9a3c5c1c, EVP_DigestInit() incorrectly returned BAD_FUNC_ARG when passed a null ctx.
2024-09-04 14:04:29 -05:00
Daniel Pouzzner
53aec861a4
Merge pull request #7938 from billphipps/atomic_fence
...
Modernized memory fence support for C11 and clang
2024-09-04 13:17:26 -05:00
Daniel Pouzzner
c9ff15da21
Merge pull request #7901 from SparkiDev/memusage_8
...
Memory usage improvements
2024-09-04 12:34:44 -05:00
Colton Willey
3b5d0aa85a
Fix up whitespace changes from editor autoformat
2024-09-04 10:25:20 -07:00
Colton Willey
f9af463db1
Update RSA verify documentation to specify that the output should be compared with the original plaintext
2024-09-04 10:13:40 -07:00
András Fekete
fb86818251
Merge pull request #7930 from mpsuzuki/fix-ocsp-test
...
[scripts/ocsp.test] Remove ${SCRIPT_DIR} from the pathname to ca-google-root.pem.
2024-09-04 12:59:25 -04:00
David Garske
0580c1a83a
Merge pull request #7889 from miyazakh/renesas_rx65n_update
...
Update rx64n support on gr-rose
2024-09-04 08:08:49 -07:00
David Garske
7c7de235d8
Merge pull request #7937 from douzzer/20240903-missing-WC_NO_ERR_TRACEs
...
20240903-missing-WC_NO_ERR_TRACEs
2024-09-04 08:07:19 -07:00
David Garske
990b4d62ea
Merge pull request #7940 from Irvise/master
...
Ada binding: correct Alire manifest and fix build
2024-09-04 08:05:58 -07:00
Sean Parkinson
88c3e0af22
Memory usage improvements
...
kdf.c: wc_PRF() - No need for previous, reuse current.
sha256.c: Transform_Sha256() - Add slow but small version for many
register implementation.
sp_int.h: Change 'used' and 'size' fields to 16-bit types when possible.
sp_int.c: Fixes for 16-bit used.
2024-09-04 22:51:31 +10:00
Irvise
2a96981dbe
Ada binding: correct Alire manifest and fix build
2024-09-04 09:42:24 +02:00
Daniel Pouzzner
b26fa6cf59
Merge pull request #7918 from SparkiDev/type_conversion_fixes_3
...
Type conversion fixes
2024-09-03 20:18:00 -05:00
Daniel Pouzzner
121b8c52f8
Merge pull request #7869 from julek-wolfssl/libspdm-x509
...
libspdm x509 parts
2024-09-03 20:09:31 -05:00
Bill Phipps
ae939e9e6a
Modernized memory fence support for C11 and clang
2024-09-03 21:09:30 -04:00
Daniel Pouzzner
806df85477
backfill more missing WC_NO_ERR_TRACE()s on error code operands, and refactor away the obsolete GEN_MEM_ERR macro mechanism in wolfcrypt/src/ecc.c.
2024-09-03 17:44:11 -05:00
Sean Parkinson
ec6c7051a8
Merge pull request #7928 from dgarske/riscv_fixes
...
Fixes for building on RISC-V
2024-09-04 08:03:45 +10:00
David Garske
b7a6c6c314
Fixes for building RISCV ASM with enable-all.
...
* Fix type warning for SHA512 ByteReverseWords call
* Fix issue with riscv-asm and xchacha.
2024-09-03 09:37:01 -07:00
Reda Chouk
a80a2cdcff
Addressed type conversion error in internal.c
2024-09-03 16:26:32 +02:00
Reda Chouk
b237730dad
fix type conversion in ssl* files
2024-09-02 18:08:14 +02:00
Marco Oliverio
293719c168
ocsp: search CA by key hash instead of ext key id
2024-09-02 15:25:53 +00:00
Juliusz Sosinowicz
9254e270be
Add openldap action
2024-09-02 13:29:18 +02:00
Sean Parkinson
ed7beb4e0e
Type conversion fixes
...
Changes to get compilation with -Wconversion passing on the files.
2024-09-02 19:19:23 +10:00
Juliusz Sosinowicz
2c9a3c5c1c
Missing libspdm features
...
- RsaFunctionPrivate: detect when only n,e,d are available
- wolfSSL_EVP_add_digest: return success
- wolfSSL_EVP_add_cipher: return success
- wolfSSL_BN_bin2bn: accept NULL data if len is 0 (checked in mp_read_unsigned_bin)
- wolfssl_read_bio: advance correct bio
- wolfSSL_X509_set_ext: return raw extension data for BASIC_CA_OID
- Implement
- sk_X509_EXTENSION_free
- d2i_EC_PUBKEY_bio
- d2i_RSA_PUBKEY_bio
- d2i_X509_REQ_INFO
- X509_REQ_INFO_free
- ASN1_TIME_set_string_X509
2024-09-02 10:01:12 +02:00
Sergey Fedorov
70caed572a
crl.c: use EV_TRIGGER when NOTE_TRIGGER unavailable
2024-09-01 21:03:18 +08:00
Sergey Fedorov
2ddfe15c4f
Fix libdispatch usage condition
2024-09-01 21:03:18 +08:00
Sergey Fedorov
94478cb208
wc_port.h: fix macros for powerpc
2024-09-01 20:17:11 +08:00
Sergey Fedorov
ef2424336c
sp_int.c: fix ppc asm for macOS
2024-09-01 20:17:11 +08:00
Sergey Fedorov
b6bfae9c24
asm.c: fix ppc asm for macOS
2024-09-01 20:17:11 +08:00
Sergey Fedorov
765e5d1689
types.h: add powerpc macros
2024-09-01 20:17:11 +08:00
suzuki toshiya
2fa0da74e4
[scripts/ocsp.test] Remove ${SCRIPT_DIR} from the pathname to ca-google-root.pem.
2024-08-31 18:22:20 +09:00
Daniel Pouzzner
4d837e74c4
Merge pull request #7303 from Irvise/master
...
[Ada] Initial library support
2024-08-31 00:26:29 -05:00
Colton Willey
2bcfff3497
Expand testing to include SW implementation of RSA with padding callback, code cleanup to address review comments.
2024-08-30 13:41:51 -07:00
David Garske
72fc08ede8
Merge pull request #7927 from douzzer/20240830-wolfSSL_ERR_reason_error_string-EnumCastOutOfRange
...
20240830-wolfSSL_ERR_reason_error_string-EnumCastOutOfRange
2024-08-30 13:17:32 -07:00
Daniel Pouzzner
126df1d9ee
src/internal.c: in wolfSSL_ERR_reason_error_string(), return "unknown error number" when error==0 and !OPENSSL_EXTRA, to avoid provoking clang-analyzer-optin.core.EnumCastOutOfRange.
2024-08-30 14:32:56 -05:00
David Garske
13ec0f0694
Merge pull request #7916 from SparkiDev/riscv-sha3-asm
...
RISC-V ASM: SHA-3
2024-08-30 09:06:36 -07:00
Juliusz Sosinowicz
b67fd6f29c
Fix failing test_dtls_frag_ch
...
- Add option to disable ECH
- InitSuites: clean up DTLS paths
- wolfSSL_parse_cipher_list: remove WOLFSSL_MAX_SUITE_SZ setting
- wolfSSL_parse_cipher_list: add rationale for keeping ciphersuites
- test_dtls_frag_ch: ECH and ciphersuites were pushing the ClientHello message over the fragmentation limit. Disabling ECH and limiting ciphersuites fixes the test.
2024-08-30 09:56:52 +02:00
Sean Parkinson
d475ecc8d3
Merge pull request #7917 from douzzer/20240828-WOLFSSL_DEBUG_TRACE_ERROR_CODES-TLS
...
20240828-WOLFSSL_DEBUG_TRACE_ERROR_CODES-TLS
2024-08-30 14:12:20 +10:00
Sean Parkinson
0df8a0f88c
Merge pull request #7925 from JacobBarthelmeh/readme
...
update CVE listed in changelog
2024-08-30 14:11:17 +10:00
Daniel Pouzzner
2dcd04668b
src/internal.c: in wolfSSL_ERR_reason_error_string(), restore handling for -WOLFSSL_X509_V_ERR_*, but separated from handling for the proper wolfSSL_ErrorCodes.
2024-08-29 21:28:02 -05:00
Daniel Pouzzner
255465a757
src/internal.c: in wolfSSL_ERR_reason_error_string(), remove handling for -WOLFSSL_X509_V_ERR_*, and make corresponding changes in wolfssl/error-ssl.h and tests/api.c.
2024-08-29 20:02:42 -05:00
JacobBarthelmeh
26756da925
update CVE listed in changelog
2024-08-29 16:45:23 -06:00
Daniel Pouzzner
4b4000bf61
Merge pull request #7903 from SparkiDev/ecc_sigalgo_params_null
...
Certificates: ECC signature algorithm parameter
2024-08-29 16:16:08 -05:00
Daniel Pouzzner
fab5c9f864
Merge pull request #7880 from ColtonWilley/tls13_send_cert_use_signed_len
...
Use signed variable for length calculation in SendTls13Certificate
2024-08-29 16:12:41 -05:00
Daniel Pouzzner
ef4ea53570
Merge pull request #7912 from julek-wolfssl/gh/7686
...
DTLS 1.3: check size including headers
2024-08-29 16:09:53 -05:00
Daniel Pouzzner
41449fac48
Merge pull request #7895 from embhorn/zd18433
...
Use verify callback before checking dates
2024-08-29 15:52:04 -05:00
Daniel Pouzzner
5e1bf9d4f2
Merge pull request #7908 from anhu/no_stdio
...
Don't include stdio.h if not needed.
2024-08-29 15:33:41 -05:00
Daniel Pouzzner
f670400183
Merge pull request #7921 from gasbytes/oss-fuzz-70747
...
added missing wolfSSL_X509_NAME_free(dName)
2024-08-29 15:15:52 -05:00
Daniel Pouzzner
17870d4159
src/internal.c: in wolfSSL_ERR_reason_error_string(), add missing error string for SCR_DIFFERENT_CERT_E.
...
wolfssl/ssl.h, wolfssl/error-ssl.h, wolfssl/wolfcrypt/error-crypt.h, wolfcrypt/src/error.c, and src/internal.c:
* fix values of WOLFSSL_ERROR_SSL and WOLFSSL_ERROR_WANT_X509_LOOKUP to match OpenSSL values;
* move legacy CyaSSL compat layer error codes from ssl.h to error-ssl.h and renumber them to conform to existing sequence;
* move enum IOerrors from ssl.h to error-ssl.h to get picked up by support/gen-debug-trace-error-codes.sh;
* add to enum wolfSSL_ErrorCodes negative counterparts for several positive error return constants;
* include error-ssl.h from ssl.h;
* add label (wolfCrypt_ErrorCodes) to error-crypt.h enum, and in wc_GetErrorString(), use switch ((enum wolfCrypt_ErrorCodes)error) to activate switch warnings for missing enums;
* in wolfSSL_ERR_reason_error_string(), use switch((enum wolfSSL_ErrorCodes)error) to activate switch warnings for missing enums;
* in ssl.h, add special-case WOLFSSL_DEBUG_TRACE_ERROR_CODES macros for WOLFSSL_FAILURE;
* in error-crypt.h, add missing WOLFSSL_API attribute to wc_backtrace_render(); and
* harmonize gating of error codes, ssl.h / error-ssl.h / internal.c:wolfSSL_ERR_reason_error_string() / api.c:error_test().
tests/api.c:
* add error_test() adapted from wolfcrypt/test/test.c, checking all error strings for expected presence/absence and length, called from existing test_wolfSSL_ERR_strings().
* in post_auth_version_client_cb(), add missing !NO_ERROR_STRINGS gating.
add numerous WC_NO_ERR_TRACE()s to operand error code uses, cleaning up error traces in general, and particularly when WOLFSSL_DEBUG_TRACE_ERROR_CODES_ALWAYS.
* crypto lib (36),
* crypto test&benchmark (20),
* TLS lib (179),
* examples (122),
* linuxkm (3),
* tests/api.c (2272).
2024-08-29 14:22:56 -05:00
Colton Willey
50a3a37ff2
Merge branch 'master' of github.com:ColtonWilley/wolfssl into rsa_pad_crypto_cb
2024-08-29 11:14:49 -07:00
Anthony Hu
844d0ec558
Get rid of pqm4 in favour our own Kyber/MLDSA implementation
2024-08-29 13:23:39 -04:00
Reda Chouk
109e4c3dfb
added missing wolfSSL_X509_NAME_free(dName)
2024-08-29 17:59:02 +02:00
Juliusz Sosinowicz
31ec2b0acd
Merge pull request #7920 from bandi13/fixOSPOpenSSH
...
Fix compilation error for RSA_MAX_SIZE
2024-08-29 16:41:18 +02:00
Andras Fekete
b886ffd04b
Fix compilation error for RSA_MAX_SIZE
2024-08-29 09:31:10 -04:00
Sean Parkinson
7c3d66ecd6
RISC-V ASM: SHA-3
...
Add assembly implementations of SHA-3.
Use VSRL_VX instead of two VSRL_VI operations as immediate is only 5
bits.
2024-08-29 17:58:02 +10:00
Daniel Pouzzner
b178138d83
src/internal.c: in wolfSSL_ERR_reason_error_string(), add missing error string for SCR_DIFFERENT_CERT_E, and de-gate error strings previously gated on HAVE_HTTP_CLIENT.
...
tests/api.c: add error_test() adapted from wolfcrypt/test/test.c, checking all error strings for expected presence/absence and length, called from existing test_wolfSSL_ERR_strings().
wolfssl/ssl.h, wolfssl/error-ssl.h, and wolfssl/wolfcrypt/error-crypt.h:
* move several negative error return codes from ssl.h to error-ssl.h,
* renumber them to conform to existing sequence, and
* include error-ssl.h from ssl.h;
* add special-case WOLFSSL_DEBUG_TRACE_ERROR_CODES macros for WOLFSSL_FAILURE;
* add missing WOLFSSL_API attribute to wc_backtrace_render().
add numerous WC_NO_ERR_TRACE()s to operand error code uses, cleaning up error traces in general, and particularly when WOLFSSL_DEBUG_TRACE_ERROR_CODES_ALWAYS.
* crypto lib (36),
* crypto test&benchmark (20),
* TLS lib (179),
* examples (122),
* linuxkm (3),
* tests/api.c (2272).
2024-08-28 23:05:04 -05:00
David Garske
d4f6b5b300
Merge pull request #7915 from embhorn/zd18539
...
Fix WOLFSSL_NO_TLS12 build error
2024-08-28 10:03:58 -07:00
Eric Blankenhorn
1a3a730eb9
Fix WOLFSSL_NO_TLS12 build error
2024-08-28 10:51:11 -05:00
David Garske
5e77c06ea2
Merge pull request #7913 from bandi13/fixDocumentation
...
Doxygen complains about the quotes used
2024-08-28 07:34:03 -07:00
Andras Fekete
6494233774
Doxygen complains about the quotes used
2024-08-28 09:31:34 -04:00
Juliusz Sosinowicz
b2f59f733a
DTLS 1.3: check size including headers
2024-08-28 12:58:50 +02:00
Sean Parkinson
a3e239c2ad
Certificates: ECC signature algorithm parameter
...
Allow, with a define, ECC signature algorithm parameters to be NULL and
not just empty.
Only for interop.
2024-08-28 11:10:41 +10:00
Sean Parkinson
652158fcac
Dilithium: Support FIPS 204 Draft
...
Compile with WOLFSSL_DILITHIUM_FIPS204_DRAFT to get code that implements
the FIPS-204 August 2023 DRAFT.
Alternatively, --enable-dilithium=draft or
--enable-dilithium=fips204-draft
2024-08-28 11:02:01 +10:00
Anthony Hu
6174fb3545
Don't include stdio.h if not needed.
2024-08-27 17:44:04 -04:00
Hideki Miyazaki
0cfd48f200
update rx64n gr-rose key and signed cert
...
add a script to generate signed cert
2024-08-28 06:00:31 +09:00
Eric Blankenhorn
dcea21a9a5
Merge pull request #7897 from douzzer/20240823-WOLFSSL_DEBUG_TRACE_ERROR_CODES_ALWAYS
...
20240823-WOLFSSL_DEBUG_TRACE_ERROR_CODES_ALWAYS
2024-08-27 15:41:20 -05:00
Colton Willey
b7299a23c0
Add new crypto callback for RSA with padding.
2024-08-27 13:09:23 -07:00
Eric Blankenhorn
d0475def5f
Merge pull request #7906 from douzzer/20240827-XFENCE-all-disable-asm-assert
...
20240827-XFENCE-all-disable-asm-assert
2024-08-27 14:32:20 -05:00
Daniel Pouzzner
349e06ab4a
wolfssl/wolfcrypt/wc_port.h: use non-asm implementation of XFENCE when available.
2024-08-27 13:36:21 -05:00
Colton Willey
a57d234f6b
Clean up sign comparison warnings
2024-08-27 10:07:11 -07:00
Daniel Pouzzner
e164bcb24d
Merge pull request #7904 from SparkiDev/kyber_tls_fixes
...
Kyber: fix TLS usage
2024-08-27 00:44:56 -05:00
Daniel Pouzzner
90152fedda
Merge pull request #7902 from gasbytes/wc_pkcs7_decodeauthenvelopeddata-problem
...
Added check on error out from wc_PKCS7_EncodeAuthEnvelopedData
2024-08-27 00:40:21 -05:00
Daniel Pouzzner
2537e08a99
Merge pull request #7890 from embhorn/zd18463
...
Various Coverity fixes
2024-08-26 23:34:23 -05:00
Sean Parkinson
893a486ae1
Kyber: fix TLS usage
...
Allow only select parameter sets to be compiled in.
Fixed unit.test to recognize when level is supported.
2024-08-27 10:35:08 +10:00
Anthony Hu
bf074d2bb9
Merge pull request #7877 from SparkiDev/ml_dsa_ml_kem_final
...
Dilithum, Kyber: Update to final specification
2024-08-26 16:48:05 -04:00
Daniel Pouzzner
b17b190695
tests/api.c: add missing deallocations in test_wc_dilithium_sign_vfy().
2024-08-26 15:00:27 -05:00
Reda Chouk
25dd8b641e
added check on error out from wc_PKCS7_EncodeAuthEnvelopedData
2024-08-26 19:29:06 +02:00
Sean Parkinson
60f438f0c3
Dilithum, Kyber: Update to final specification
...
FIPS 203 and FIPS 204 final specification changes.
2024-08-26 17:42:27 +10:00
Daniel Pouzzner
bcbb5441ec
Merge pull request #7881 from gasbytes/eagain-proper-shutdown
...
Properly handling the shutdown when multiple ones go on EAGAIN back to back
2024-08-23 23:46:31 -05:00
Daniel Pouzzner
c454a4217c
Merge pull request #7866 from gojimmypi/pr-espressif-config
...
Introduce Espressif common CONFIG_WOLFSSL_EXAMPLE_NAME, Kconfig
2024-08-23 21:11:09 -05:00
Daniel Pouzzner
3f0ba97d1e
Merge pull request #7893 from gojimmypi/pr-asn-allow-zero-serial
...
Introduce WOLFSSL_ASN_ALLOW_0_SERIAL
2024-08-23 21:09:41 -05:00
Daniel Pouzzner
1d34b565fa
Merge pull request #7891 from SparkiDev/test_fixes_2
...
Test fixes
2024-08-23 21:08:44 -05:00
Takashi Kojo
4bedef9664
allow sigParamsSz is zero and malloc(0) to return NULL
2024-08-24 07:58:02 +09:00
Daniel Pouzzner
a39f521f7f
Merge pull request #7884 from dgarske/x86_notwindows
...
Fixes for building x86 in Visual Studio for non-windows OS
2024-08-23 17:38:30 -05:00
Daniel Pouzzner
7725e75c42
add WOLFSSL_DEBUG_TRACE_ERROR_CODES_ALWAYS flag for optional errcode tracing in apps, define it in wolfcrypt/test/test.c when defined(WOLFSSL_DEBUG_TRACE_ERROR_CODES), and deploy WC_NO_ERR_TRACE() to test.c where needed.
2024-08-23 16:35:43 -05:00
Eric Blankenhorn
6dab58266d
Various Coverity fixes
2024-08-23 16:09:18 -05:00
Eric Blankenhorn
be37587bc3
Use verify callback before checking dates
2024-08-23 16:02:23 -05:00
Reda Chouk
8a6d7ff9a5
more clang-tidy edits
2024-08-23 21:31:55 +02:00
Reda Chouk
f4a27772e0
removed unnecessary copy of cb
2024-08-23 17:44:49 +02:00
Juliusz Sosinowicz
88d4f486e2
Merge pull request #7892 from douzzer/20240822-fixes
...
20240822-fixes
2024-08-23 16:47:23 +02:00
Daniel Pouzzner
166519ae67
wolfssl/openssl/asn1.h: use macro for ASN1_BIT_STRING_FIRST_BYTE to avoid non-const errors under gcc-6.5; tests/api.c: fix uninited data defect in test_wolfssl_EVP_chacha20_poly1305().
2024-08-22 14:41:06 -05:00
Reda Chouk
577cce60df
defined(HAVE_MANUAL_MEMIO_TESTS_DEPENDENCIES) && !defined(WOLFSSL_NO_TLS12)
2024-08-22 21:30:57 +02:00
Reda Chouk
7d2ca8db5f
addressing review:
...
- added unit test;
- formatting;
2024-08-22 21:30:57 +02:00
Reda Chouk
2356bec909
no magic values
2024-08-22 21:30:57 +02:00
Reda Chouk
db64d36f00
properly handling the shutdown when multiple ones go on EAGAIN back to
...
back.
2024-08-22 21:30:56 +02:00
gojimmypi
8baf39310f
Introduce WOLFSSL_ASN_ALLOW_0_SERIAL
2024-08-22 12:30:15 -07:00
Sean Parkinson
56adefcdc5
Ed25519: don't define ASM functions when small
...
Small builds don't allow ASM implementations.
Don't have functions defined for ASM when building small
implementation.
2024-08-22 17:05:26 +10:00
Sean Parkinson
08d8a74992
Test fixes
...
api.c:
Update #ifdefs.
sp_int.c:
Fix free call when hardening is disabled.
2024-08-22 16:09:22 +10:00
Sean Parkinson
e99bbf9429
Merge pull request #7875 from douzzer/20240814-debug-trace-errcodes-MP
...
20240814-debug-trace-errcodes-MP
2024-08-22 10:10:45 +10:00
Daniel Pouzzner
1a0bf421bd
Merge pull request #7781 from julek-wolfssl/sssd
...
init sssd support
2024-08-21 19:05:08 -05:00
Sean Parkinson
2505a59dae
Merge pull request #7886 from douzzer/20240819-shebang-bash-env
...
20240819-shebang-bash-env
2024-08-21 14:50:15 +10:00
Daniel Pouzzner
2448d482f4
wolfssl/wolfcrypt/error-crypt.h: move MPI error codes to range {-97, -100} to avoid collisions.
2024-08-20 23:37:21 -05:00
Daniel Pouzzner
05c4955316
linuxkm: add support for WOLFSSL_DEBUG_BACKTRACE_ERROR_CODES using dump_stack().
2024-08-20 23:36:07 -05:00
Daniel Pouzzner
0da78a7ee2
move several MP error codes from wolfssl/wolfcrypt/sp_int.h, wolfssl/wolfcrypt/tfm.h, and wolfssl/wolfcrypt/integer.h, to wolfssl/wolfcrypt/error-crypt.h, harmonizing their names and numbers.
...
wolfssl/wolfcrypt/error-crypt.h: add WC_FIRST_E.
wolfcrypt/src/error.c: add MP error code strings.
wolfssl/error-ssl.h: add WOLFSSL_FIRST_E and WOLFSSL_LAST_E.
wolfcrypt/test/test.c: update error_test() for new error code layout, refactoring the "missing" check.
src/internal.c: use WC_FIRST_E and WC_LAST_E in wolfSSL_ERR_reason_error_string().
src/ssl.c: fix wolfSSL_ERR_GET_REASON() to identify in-range error codes using WC_FIRST_E, WC_LAST_E, WOLFSSL_FIRST_E, and WOLFSSL_LAST_E.
sp_int.h: provide for WOLFSSL_DEBUG_TRACE_ERROR_CODES, and refactor MP error codes as enums, for consistency with other error codes.
wolfcrypt/src/ecc.c: fix 2 identicalInnerCondition's.
2024-08-20 14:09:06 -05:00
Daniel Pouzzner
1c68da282c
portability enhancement: use "#!/usr/bin/env <interpreter>" on all perl scripts and shell scripts that use bash extensions, and use "#!/bin/sh" on the rest.
2024-08-20 13:48:33 -05:00
Juliusz Sosinowicz
305a699398
Add sssd action
2024-08-20 17:12:43 +02:00
David Garske
4f4fb4bd0a
Merge pull request #7888 from douzzer/20240820-configure-silent
...
20240820-configure-silent
2024-08-20 05:35:23 -07:00
Juliusz Sosinowicz
3260a9b680
Address code review
2024-08-20 10:53:44 +02:00
Daniel Pouzzner
c4f978ffc8
Merge pull request #7874 from mpsuzuki/fix-posix-date
...
POSIX does not request "date" command to support "-R" option.
2024-08-20 00:42:52 -05:00
Daniel Pouzzner
0becc347b1
configure.ac: inhibit options.h reminder message when --quiet.
2024-08-20 00:25:15 -05:00
David Garske
294362a0b7
Fixes for building x86 in Visual Studio for non-windows OS.
2024-08-19 13:00:41 -07:00
suzuki toshiya
e417091f61
[configure.ac] spell out RFC 5322 "date" format for POSIX-conforming "date" with no extension.
...
Following to the advice by Daniel Pouzzner (see the discussion in the issue #7874 ),
no need to invoke "env" command to set LC_TIME.
* IEEE Std 1003.1-2024 does not request the "-R" option:
https://pubs.opengroup.org/onlinepubs/9799919799/
* Default "date" in Solaris 11.4 does not support "-R":
https://docs.oracle.com/cd/E88353_01/html/E37839/date-1.html
* Default "date" in HP-UX 11.22 does not support "-R":
https://man.freebsd.org/cgi/man.cgi?query=date&apropos=0&sektion=0&manpath=HP-UX+11.22&arch=default&format=html
* Default "date" in AIX 7 does not support "-R":
https://www.ibm.com/docs/en/aix/7.3?topic=d-date-command
2024-08-18 15:50:54 +09:00
gojimmypi
a0fc2f0497
Introduce Espressif common CONFIG_WOLFSSL_EXAMPLE_NAME, Kconfig
2024-08-17 13:42:30 -07:00
Daniel Pouzzner
e562a1c4d1
Merge pull request #7867 from ColtonWilley/cert_copy_option
...
Add new option to always copy cert buffer for each SSL object
2024-08-17 00:07:00 -05:00
Daniel Pouzzner
b412e5f24e
Merge pull request #7879 from dgarske/options_h
...
Improve wolfssl/options.h issues
2024-08-16 23:54:54 -05:00
Daniel Pouzzner
c90aa27e06
Merge pull request #7882 from kojo1/client-help
...
Fix <null> in the help message
2024-08-16 23:13:45 -05:00
Takashi Kojo
723adaad20
Fix <null> in the help message
2024-08-17 12:08:07 +09:00
Daniel Pouzzner
9a693f5e65
Merge pull request #7876 from mpsuzuki/fix-config-stray-redirect
...
Using ">>" with no command in configure can be ambigious for some ancient /bin/sh.
2024-08-16 15:38:39 -05:00
Colton Willey
d5268d8bb5
Update NULL check to be consistent with other checks
2024-08-16 10:46:31 -07:00
Colton Willey
a09e3bb3e7
Use signed variable for length calculation in SendTls13Certificate
2024-08-16 10:43:11 -07:00
Daniel Pouzzner
b693127dcd
Analyzer fixes
2024-08-16 17:24:34 +02:00
Juliusz Sosinowicz
a6a40de249
init sssd support
...
- Refactor OCSP to separate IO callback
- wolfSSL_BIO_reset: fix return
- CheckCertCRL_ex: return CRL_CERT_DATE_ERR instead of ASN_AFTER_DATE_E
- CheckCertCRL_ex: return most relevant error code
- i2d/d2i APIs: correct parameters handling and return codes
- Custom ASN1 structures: major refactor to make it much more versatile
- Use WOLFSSL_ASSERT_SIZEOF_GE where applicable
- wolfSSL_EVP_SignFinal: implement ecc
- wolfSSL_EVP_VerifyFinal: implement ecc
- OBJ_NAME_do_all: bring closer to OpenSSL functionality
- Correct return of *_push api
- Implement:
- OCSP_REQ_CTX API
- d2i_ECPKParameters
- wolfSSL_sk_insert
- OCSP_parse_url
- X509_STORE_set1_param
- X509_get0_subject_key_id
- X509_OBJECT_retrieve_by_subject
- OCSP_sendreq_nbio
2024-08-16 17:22:41 +02:00
David Garske
a9be38eaf0
Improve wolfssl/options.h issues. Fixes #7853 .
2024-08-15 15:49:43 -07:00
David Garske
1190d1bafe
Merge pull request #7873 from SparkiDev/riscv-poly1305-asm
...
RISC-V 64 ASM: Add Poly1305 implementation
2024-08-15 09:40:06 -07:00
Colton Willey
d056b63742
Always free existing SSL cert to be compatible with openssl behavior
2024-08-15 09:24:44 -07:00
suzuki toshiya
bbdf7fc1b0
[configure.ac] ">>" without preceding command does not work in traditional Bourne shell.
2024-08-15 13:59:16 +09:00
Sean Parkinson
ccd8b9aa8d
Merge pull request #7872 from douzzer/20240814-linuxkm-kyber-asm
...
20240814-linuxkm-kyber-asm
2024-08-15 14:46:55 +10:00
Daniel Pouzzner
003ea8bff0
Merge pull request #7868 from dgarske/pq_xms_lmss
...
Fixes for building wolfBoot sources for PQ LMS/XMSS
2024-08-14 23:28:12 -05:00
Daniel Pouzzner
14254e8a6e
Merge pull request #7862 from bigbrett/wc-test-nocryptocb
...
cryptocb test disable option
2024-08-14 23:18:02 -05:00
Daniel Pouzzner
0c24aff183
Merge pull request #7864 from gojimmypi/pr-fix-dh-ret
...
fix interim return variable name when DH enabled
2024-08-14 23:08:29 -05:00
Daniel Pouzzner
39a4780878
Merge pull request #7870 from anhu/pkcs7_correct_issuer
...
Ensure correct issuer is copied into PKCS7 struct during verification
2024-08-14 23:05:20 -05:00
Daniel Pouzzner
a2acc41b3f
wolfcrypt/src/wc_kyber.c: in kyberkey_encapsulate(), don't overallocate "at" for USE_INTEL_SPEEDUP.
2024-08-14 21:51:12 -05:00
Colton Willey
65d7c6a533
Do not overwrite cert in wolfSSL_set_SSL_CTX if one is already set, remove unreachable frees.
2024-08-14 17:07:20 -07:00
Sean Parkinson
3ade7a875e
RISC-V 64 ASM: Add Poly1305 implementation
...
Implementation using standard and vector instructions.
2024-08-15 09:01:34 +10:00
Colton Willey
dcf3af5382
Modify tests to make analyzers happy
2024-08-14 14:33:38 -07:00
Daniel Pouzzner
7a29b1e4fd
add comments explaining dependence on idempotency for race-free dynamics re checkedAESNI, haveAESNI, intel_flags, and sha_method. see #7863 .
2024-08-14 15:23:48 -05:00
Colton Willey
15abea7f20
Use 1 instead of TRUE
2024-08-14 13:19:43 -07:00
Colton Willey
337cddfd90
Rework implementation to use existing weOwnCert logic
2024-08-14 13:13:25 -07:00
Daniel Pouzzner
1fa2d2d625
ASN: move DecodedCert.extSubjKeyIdSz and .extAuthKeyIdSz out of the OPENSSL_EXTRA gate. fixes test.c:certext_test(), broken by f8c968d8d1 for some valid configs.
2024-08-14 14:45:11 -05:00
Daniel Pouzzner
21484ec75a
linuxkm: add asm support for Kyber.
2024-08-14 14:45:11 -05:00
Colton Willey
f4decf84da
Enable cert copy by default for openssl extra
2024-08-14 12:16:14 -07:00
Anthony Hu
8b57e3e741
Merge pull request #7807 from Laboratory-for-Safe-and-Secure-Systems/mlkem_compat
...
ML-KEM compatibility
2024-08-14 13:50:10 -04:00
Anthony Hu
498dadad97
Ensure correct issuer is copied into PKCS7 struct during verification
2024-08-14 11:29:02 -04:00
Juliusz Sosinowicz
055d68db9c
Merge pull request #7804 from douzzer/20240728-EVP_PKEY_is_a
...
20240728-EVP_PKEY_is_a
2024-08-14 16:36:06 +02:00
Daniel Pouzzner
ee966beb77
wolfcrypt/src/evp.c: add wolfSSL_EVP_PKEY_is_a() and test_EVP_PKEY_is_a(). also add test_EVP_CIPHER_key_length() and add missing RC4 clause to wolfSSL_EVP_Cipher_key_length().
2024-08-14 09:23:02 -05:00
David Garske
01eaa56290
Fixes for building wolfBoot sources for PQ LMS/XMSS.
...
* Don't throw `#error "This code requires libxmss"`, just gate ext_xmss on HAVE_LIBXMSS. Same for LMS.
2024-08-13 14:10:45 -07:00
Daniel Pouzzner
7dbf2a06dd
Merge pull request #7865 from bandi13/fixMemOverrunInTest
...
Fix possible memory overrun in tests
2024-08-13 15:59:00 -05:00
Colton Willey
ef500c2e62
Add new option to always copy cert buffer for each SSL object
2024-08-13 13:32:25 -07:00
Andras Fekete
ab7bc29006
Fix curl.yml
2024-08-13 16:18:29 -04:00
Andras Fekete
f8c968d8d1
Fix possible memory overrun
2024-08-13 13:43:54 -04:00
gojimmypi
e0e05766ac
fix interim return variable name when DH enabled
2024-08-13 09:10:22 -07:00
Fernando Oleo Blanco
5ea22effcc
Update documentation
2024-08-13 10:56:25 +02:00
Daniel Pouzzner
3875a1855e
Merge pull request #7859 from SparkiDev/aarch64_poly1305_asm_improv
...
Aarch64 Poly1305 ASM: Improve performance
2024-08-12 18:35:49 -05:00
Daniel Pouzzner
7fac450c92
Merge pull request #7860 from dgarske/have_config
...
Add missing config.h on .c files
2024-08-12 18:33:04 -05:00
Daniel Pouzzner
869431495f
Merge pull request #7861 from bandi13/smallPatches
...
No need to check for dependencies
2024-08-12 18:30:33 -05:00
Daniel Pouzzner
53f5ded48d
Merge pull request #7849 from miyazakh/renesas_tsip_update
...
RX72N support update
2024-08-12 18:26:32 -05:00
Brett Nicholas
10a3634e86
cmake support
2024-08-12 16:01:15 -06:00
Brett Nicholas
8df5d61179
add optional cryptocb test disable macro to wolfCrypt tests
2024-08-12 15:16:33 -06:00
Andras Fekete
e2d2915fc1
No need to check for dependencies
...
Suggested in https://github.com/wolfSSL/wolfssl/issues/7857#issuecomment-2283962525
2024-08-12 14:58:02 -04:00
David Garske
08622bab39
Fix to remove NO_BIG_INT from MICROCHIP_PIC32 in settings.h.
2024-08-12 09:29:20 -07:00
David Garske
537827ebde
Add missing config.h on some .c files.
2024-08-12 09:29:07 -07:00
Sean Parkinson
3725594020
Aarch64 Poly1305 ASM: Improve performance
...
Do as many multiplications in base 64 rather than 26 with normal integer
registers.
2024-08-12 12:47:44 +10:00
Sean Parkinson
9f9e89082f
Merge pull request #7854 from embhorn/rsa_min_1024
...
Update default RSA min to 1024
2024-08-12 10:04:13 +10:00
Fernando Oleo Blanco
bec3cd8b6f
Document Alire use
2024-08-11 18:36:54 +02:00
Fernando Oleo Blanco
ae7e7e716a
Update upstream
2024-08-10 13:56:14 +02:00
Kaleb Himes
f660299de0
Merge pull request #7856 from douzzer/20240809-fips-dev-feature-unlock
...
20240809-fips-dev-feature-unlock
2024-08-09 16:00:30 -06:00
JacobBarthelmeh
85bab19090
Merge pull request #7845 from ColtonWilley/pkcs7_digest_absent_params
...
Add option for absent hash params in PKCS7
2024-08-09 15:56:28 -06:00
Hideki Miyazaki
debbea3843
put back the RNG
...
comment to CUSTOM RAND GENERATE BLOCK
2024-08-10 06:45:18 +09:00
Daniel Pouzzner
0d84597d78
Merge pull request #7855 from embhorn/zd18433
...
Fix example settings
2024-08-09 15:32:17 -05:00
Daniel Pouzzner
84b91d0e1e
Merge pull request #7841 from mrdeep1/dtls_downgrade_cid
...
Support DTLS1.3 downgrade when server supports CID
2024-08-09 15:30:20 -05:00
Daniel Pouzzner
bba3995434
Merge pull request #7834 from oltolm/cmake_fix
...
cmake: fix parsing WOLFSSL_DEFINITIONS
2024-08-09 15:24:15 -05:00
Daniel Pouzzner
d351430222
Merge pull request #7840 from mrdeep1/dtls_downgrade
...
Support DTLS1.3 downgrade when server sends multiple handshakes in packet
2024-08-09 15:22:46 -05:00
Daniel Pouzzner
0d952c3343
Merge pull request #7850 from bandi13/dockerfileFixes
...
Dockerfile fixes
2024-08-09 15:19:59 -05:00
Daniel Pouzzner
656ba24de5
Merge pull request #7852 from SparkiDev/sp_no_rng_fix
...
SP: no RNG fix
2024-08-09 15:00:15 -05:00
Daniel Pouzzner
e142b16ae2
Merge pull request #7848 from miyazakh/fips_wcPBKDF2ex
...
Check klen in byte in wc_PBKDF2_ex
2024-08-09 14:49:53 -05:00
Daniel Pouzzner
034e13298f
Merge pull request #7847 from SparkiDev/sp_xfree_2
...
SP: Remove check of NULL before XFREE
2024-08-09 14:47:05 -05:00
Daniel Pouzzner
98f8ab085e
configure.ac: when FIPS_VERSION==dev, unlock features to allow user-forced enablement/disablement. also, add line breaks for clarity on the similar clauses in the v5* section.
2024-08-09 14:38:22 -05:00
Andras Fekete
edb95ae7ae
Clear out remnants of old code
2024-08-09 14:22:38 -04:00
Colton Willey
0a5ebaf806
Change SetAlgoIdEx to be local
2024-08-09 11:22:21 -07:00
Eric Blankenhorn
373f5ee9ae
Fix example settings
2024-08-09 13:06:29 -05:00
Eric Blankenhorn
9dddd99b3b
Update default RSA min to 1024
2024-08-09 10:41:41 -05:00
Sean Parkinson
17a09d9853
SP: no RNG fix
...
Don't use RNG API when WC_NO_RNG is defined.
2024-08-09 10:18:12 +10:00
Sean Parkinson
2a08d3001c
Merge pull request #7846 from douzzer/20240806-debug-trace-errcodes-backtrace
...
20240806-debug-trace-errcodes-backtrace
2024-08-09 09:45:01 +10:00
Daniel Pouzzner
c25d86c6c7
support/gen-debug-trace-error-codes.sh: tweak for compatibility with mawk.
2024-08-08 15:57:14 -05:00
Andras Fekete
085b78994d
Update buildAndPush script
2024-08-08 16:44:22 -04:00
Andras Fekete
63ec8fe83a
Add in 'libbacktrace'
2024-08-08 16:14:03 -04:00
Andras Fekete
e1502e7f5b
Need a newer version that doesn't complain about libz
2024-08-08 15:39:16 -04:00
Daniel Pouzzner
a75d520727
src/pk.c: fix a null deref (nullPointerRedundantCheck) in wolfSSL_RSA_GenAdd() added in d350ba6c41.
2024-08-08 11:40:57 -05:00
Daniel Pouzzner
24e34aa41a
wolfcrypt/src/logging.c: in WOLFSSL_BUFFER(), on averted overrun, log a buffer error rather than silently failing; in wc_backtrace_render(), fix !WOLFSSL_MUTEX_INITIALIZER race mitigation code.
2024-08-08 10:49:05 -05:00
Daniel Pouzzner
f5e775fe95
wolfcrypt/src/wc_kyber.c: fixes for null derefs (nullPointerRedundantCheck) in wc_KyberKey_MakeKeyWithRandom() and wc_KyberKey_Decapsulate() added in d350ba6c41.
2024-08-08 09:13:56 -05:00
Daniel Pouzzner
763ced668e
fixes for defects identified by cppcheck and clang-tidy on --enable-debug builds: null deref in tests/api.c:load_pem_key_file_as_der(), redundant declarations in wolfcrypt/benchmark/benchmark.c, and numerous unchecked XSNPRINTF()s in wolfcrypt/src/logging.c and src/internal.c.
2024-08-08 09:00:42 -05:00
Daniel Pouzzner
5f6067c3e1
add --enable-debug-trace-errcodes=backtrace.
...
* uses libbacktrace to enhance existing "ERR TRACE" messages with backtraces, rendered in same format as the sanitizers.
* adds wc_backtrace_render() and some related callbacks to wolfcrypt/src/logging.c.
* adds an overrideable WOLFSSL_DEBUG_BACKTRACE_RENDER_CLAUSE to the WC_ERR_TRACE() mechanism in wolfssl/wolfcrypt/error-crypt.h.
2024-08-08 09:00:42 -05:00
Hideki Miyazaki
493022b4b4
revert 2b4acf5027
...
fix build failure when no using TSIP
2024-08-08 18:34:36 +09:00
Hideki Miyazaki
180ad206fc
check klen in byte
2024-08-08 08:52:08 +09:00
Sean Parkinson
abc910c03c
SP: Remove check of NULL before XFREE
...
Removed more checks of NULL before XFREE.
Formatting fixes as well.
2024-08-08 09:36:05 +10:00
Daniel Pouzzner
0ab1f1969d
Merge pull request #7828 from miyazakh/zd18141_ocspv2multi
...
Sever side checks OCSP even if it uses v2 multi
2024-08-07 17:40:23 -05:00
Daniel Pouzzner
92952a5538
Merge pull request #7839 from bandi13/noIfXFREE
...
No if xfree
2024-08-07 17:08:12 -05:00
Andras Fekete
38d191c159
More PR comment fixes
2024-08-07 16:56:57 -04:00
Colton Willey
75c3030554
Add option for absent hash params in PKCS7
2024-08-07 11:07:45 -07:00
Andras Fekete
a31d8c5ce7
Addressing PR comments
2024-08-07 11:14:15 -04:00
Sean Parkinson
632d9653da
Merge pull request #7842 from embhorn/zd18417
...
Fix template DecodeSubjDirAttr to set extSubjDirAttr data
2024-08-07 18:29:04 +10:00
Sean Parkinson
18aa2b8d78
Merge pull request #7843 from dgarske/fix_sp_small_gcc
...
Fix for SP small calling label with GCC
2024-08-07 09:23:46 +10:00
Daniel Pouzzner
6116d5edb4
Merge pull request #7824 from anhu/maxq10xx_update
...
Update to the maxq10xx support
2024-08-06 18:01:39 -05:00
Sean Parkinson
2cc5ecf117
Merge pull request #7759 from JacobBarthelmeh/poly1305
...
w64wrapper for poly1305
2024-08-07 07:31:25 +10:00
Andras Fekete
b6a9c38950
Addressing PR comments
2024-08-06 15:29:32 -04:00
David Garske
91ea7ab206
Fix for SP small calling label with GCC (broken in PR #7753 ).
2024-08-06 11:05:40 -07:00
David Garske
a30d9c9818
Merge pull request #7833 from SparkiDev/riscv-sha512-asm
...
RISC-V 64: Add assembly code for SHA-512
2024-08-06 10:39:10 -07:00
Anthony Hu
29a5cc39f2
Duplicate code removed
2024-08-06 10:19:09 -07:00
Anthony Hu
3cf3f297ba
Update to the maxq10xx support
2024-08-06 10:19:09 -07:00
Andras Fekete
101088c390
Fix potential NULL dereference
2024-08-06 12:35:01 -04:00
Eric Blankenhorn
1c2b47d8ad
Fix template DecodeSubjDirAttr to set extSubjDirAttr data
2024-08-06 11:34:14 -05:00
Jon Shallow
f1c918c261
Support DTLS1.3 downgrade when server supports CID
...
With --enable-dtlscid, a client sending a Client Hello to a DLTS1.2
server that supports CID, the server provides the appropriate CID and
assumes that CID has been negotiated.
However, in the case of MbedTLS, it then rejects packets that do not
match its expected CID from the client - as wolfSSL no longer sends
the CID as it is not DTLS1.2.
https://datatracker.ietf.org/doc/html/rfc9147#section-4
If a Connection ID is negotiated, then it MUST be contained in all datagrams.
This fix drops the CID if a Hello Verify Request is received, so the
second Client Hello does not include the CID.
https://datatracker.ietf.org/doc/html/rfc6347#section-4.2.1
When responding to a HelloVerifyRequest, the client MUST use the same
parameter values (version, random, session_id, cipher_suites,
compression_method) as it did in the original ClientHello.
Dropping the CID extension does not violate this.
2024-08-06 16:48:04 +01:00
Andras Fekete
3a83c33499
Fix compilation error
2024-08-06 11:44:32 -04:00
Daniel Pouzzner
6fea4f1266
Merge pull request #7803 from SparkiDev/dilithium_hint_check_fix
...
Dilithium: fix check hint
2024-08-06 10:25:35 -05:00
Jon Shallow
bcbd701155
Support DTLS1.3 downgrade when server sends multiple handshakes in packet
...
If the server sends Server Hello, Server Key Exchange and Server Hello Done
in a single DTLS packet, but for DTLS1.2 in response to a client DTLS1.3
request, then FIRST_REPLAY state does not occur until the server re-sends
the packet. At this point wolfSSLconnect() gets used and all bursts into
life.
When processing handshakes in wolfSSL_connect_TLSv13() for case
HELLO_AGAIN_REPLY, downgrade to using wolfSSLconnect() to continue
processing the remaining handshakes in the packet.
Found when using Mbed TLS for the server.
2024-08-06 16:17:48 +01:00
JacobBarthelmeh
f1ace62363
add null sanity check and adjust add
2024-08-06 09:12:17 -06:00
Andras Fekete
f419e2351b
Remove NULL test with 'ptr = NULL' at the end
2024-08-06 10:55:37 -04:00
Andras Fekete
d350ba6c41
remove NULL test with XFREE arguments with dereference
2024-08-06 10:44:59 -04:00
Andras Fekete
d6a7187538
Programmatically remove NULL test with { XFREE() }
2024-08-06 10:37:43 -04:00
Daniel Pouzzner
f7fc0695c1
Merge pull request #7837 from bandi13/fixMemLeak
...
Fix memory leak
2024-08-06 09:37:10 -05:00
Andras Fekete
208f2d6781
One more occurrence
2024-08-06 10:32:50 -04:00
Andras Fekete
eb0c64d79a
Remove NULL test when there is a dereference
2024-08-06 10:29:02 -04:00
Andras Fekete
d7a0f49906
Programmatically remove NULL test before XFREE
2024-08-06 10:20:45 -04:00
Hideki Miyazaki
c947fc8fda
sever side checks OCSP even if it uses v2 multi
2024-08-06 13:01:56 +09:00
Sean Parkinson
4062b94fb3
RISC-V 64: Add assembly code for SHA-512
...
Cleanup RISC-V 64 SHA-256 by removing unused rev_idx.
2024-08-06 10:21:48 +10:00
Sean Parkinson
ac4f3fb75f
Merge pull request #7831 from space88man/RSA-callbacks-fulldata
...
wolfssl/wolfcrypt/pkcs11.sh: add full data RSA PSS mechs
2024-08-06 09:51:57 +10:00
S-P Chan
5083489174
wolfssl/wolfcrypt/pkcs11.sh: add full data RSA PSS mechs
2024-08-06 07:09:47 +08:00
JacobBarthelmeh
cc2ed4a75b
add w64Add for build with word64
2024-08-05 16:47:35 -06:00
Sean Parkinson
fc19c36bf8
Dilithium: fix check hint
...
When all indeces are 0, then don't check hints against indeces.
2024-08-06 08:22:47 +10:00
Andras Fekete
a0b2da98e6
Remove if(ptr) XFREE(ptr)
2024-08-05 17:47:59 -04:00
Tobias Frauenschläger
2a2f9d5916
ML-KEM compatibility
...
As the WolfSSL implementation of the PQC KEM algorithm kyber also
supports the ML-KEM draft version (enabled by `WOLFSSL_ML_KEM`), we have
to update the groups code point to be compatible with other TLS
implementations (e.g. OQS provider).
Also updated the reference to the source of the values to the current
OQS Github.
Signed-off-by: Tobias Frauenschläger
<tobias.frauenschlaeger@oth-regensburg.de >
2024-08-05 21:19:15 +02:00
Andras Fekete
df0663b70e
Fix memory leak
...
CC="gcc -fsanitize=address" ./configure --enable-dtls --enable-opensslextra --enable-debug CFLAGS="-DNO_WOLFSSL_SERVER" && make && tests/unit.test
2024-08-05 14:45:35 -04:00
oltolm
ea307c79e5
cmake: fix parsing WOLFSSL_DEFINITIONS
2024-08-05 20:39:23 +02:00
David Garske
039853cbd5
Merge pull request #7813 from SparkiDev/no_system_headers
...
Don't attempt to include system headers when not required
2024-08-05 11:32:55 -07:00
David Garske
792f81382c
Merge pull request #7836 from bigbrett/apple-universal-readme-curl-instructions
...
apple-universal README update: add curl instructions
2024-08-05 10:51:47 -07:00
David Garske
b26c34c695
Merge pull request #7830 from kojo1/doc-hmac
...
clarify description, wc_HmacSetKey
2024-08-05 10:51:15 -07:00
Sean Parkinson
0e0c3634ec
Don't attempt to include system headers when not required
...
Some builds don't require system headers: no filesystem and single
threaded.
2024-08-05 10:49:16 -07:00
András Fekete
ab2256c088
Merge pull request #7835 from julek-wolfssl/tar-artifacts
...
Use tar to preserve links
2024-08-05 13:21:58 -04:00
Juliusz Sosinowicz
332c64a77c
docker-OpenWRT.yml: Follow links
2024-08-05 18:31:04 +02:00
Juliusz Sosinowicz
5320b425e7
Use tar to preserve links
...
Something broke in the actions/download-artifact action and it is not preserving symbolic links. It didn't get a new release so my guess is that something was updated in the node environment or in npm. This is a future proof solution to preserve the fs structure between upload and download.
2024-08-05 18:23:20 +02:00
Brett Nicholas
573ade3178
added curl instructions to apple-universal README
2024-08-05 10:22:41 -06:00
Sean Parkinson
54370cc51e
Merge pull request #7829 from douzzer/20240804-SetDNSEntry-double-free
...
20240804-SetDNSEntry-double-free
2024-08-05 12:51:31 +10:00
Takashi Kojo
8368a32e7e
clarify description
2024-08-05 05:59:36 +09:00
Daniel Pouzzner
d65be7af21
wolfcrypt/src/asn.c and wolfssl/wolfcrypt/asn.h: in SetDNSEntry(), defer XFREE(dnsEntry, ...) until end (fixes double free); add PBE_NONE to enum PBESTypes; in EncryptContent(), initialize id to PBE_NONE to fix a -Wmaybe-uninitialized (CheckAlgo() can leave it unchanged even when returning success).
2024-08-04 15:41:52 -05:00
Daniel Pouzzner
9aa0742baa
Merge pull request #7798 from dgarske/asn_macros
...
ASN macro simplification
merged with github CI tests failing due to unrelated upstream changes (same tests all previously succeeded on this PR, with only 25d14f1937 added in the meantime).
supplementary testing with `wolfssl-multi-test.sh ... super-quick-check` after rebase on then-current `master` 15e99c8eff .
2024-08-02 16:36:50 -05:00
David Garske
35b45aa015
Merge pull request #7826 from douzzer/20240802-linuxkm-kernel-6v11
...
20240802-linuxkm-kernel-6v11
2024-08-02 14:03:38 -07:00
David Garske
25d14f1937
Fail with NOT_COMPILED_IN if someone tries to use ConfirmSignature with NO_ASN_CRYPT. Also default to signature failed.
2024-08-02 08:25:15 -07:00
Daniel Pouzzner
19ea0b22d0
linuxkm: update for kernel 6.11 (__kvmalloc_node_noprof and __kmalloc_cache_noprof).
2024-08-02 10:16:51 -05:00
David Garske
b12a773821
Merge pull request #7818 from SparkiDev/riscv-chacha-asm
...
RISC-V ChaCha20: assembly implementations
2024-08-02 07:52:53 -07:00
Sean Parkinson
423c1d3e57
fixup
2024-08-02 11:58:50 +10:00
Sean Parkinson
01afe89fa2
Merge pull request #7822 from anhu/WOLFSSL_NO_GOOGLE_TEST
...
Only run the google test if the WOLFSSL_EXTERNAL_TEST env var is set.
2024-08-02 09:06:21 +10:00
David Garske
a18d0161ef
Fixes for minor implicit cast warnings and line length. Also fixed benchmark.c error without ChaCha and unused encrypt_only.
2024-08-01 15:26:02 -07:00
Chris Conlon
a918c0e080
Add TLS13_RSA_PSS_SIGN_CB_NO_PREHASH for TLS 1.3 RSA-PSS PK sign callback without prehash
2024-08-01 15:41:28 -06:00
Anthony Hu
bd88078639
Change to use already existing WOLFSSL_EXTERNAL_TEST
2024-08-01 17:10:53 -04:00
Anthony Hu
1199d5a5a8
If the WOLFSSL_NO_GOOGLE_TEST env var is set, don't run the google test.
2024-08-01 16:41:22 -04:00
David Garske
15e99c8eff
Merge pull request #7820 from Laboratory-for-Safe-and-Secure-Systems/sha3_cmake
...
Build SHA3 assembly with INTEL_SPEEDUP
2024-08-01 11:40:09 -07:00
David Garske
c3adf6635b
Merge pull request #7775 from gojimmypi/pr-arduino-script
...
Update Arduino publishing script for 5.7.2 release
2024-08-01 11:24:40 -07:00
David Garske
9f62ff6e38
Merge pull request #7691 from julek-wolfssl/ntp-action
...
Add ntp action
2024-08-01 11:19:13 -07:00
David Garske
d2373246ad
Merge pull request #7657 from julek-wolfssl/cyrus-sasl-test-retry
...
Retry sasl tests as they appear to be flaky
2024-08-01 11:18:54 -07:00
David Garske
e1c1b5019e
Merge pull request #7651 from julek-wolfssl/rng-tools-action
...
Add rng-tools action
2024-08-01 11:16:17 -07:00
David Garske
16d05972ed
Merge pull request #7819 from julek-wolfssl/mosq-tests-retry
...
Retry mosquitto tests as they appear to be flaky
2024-08-01 11:15:53 -07:00
David Garske
65283fb9bb
Improvement for the --enable-asn=nocrypt. Note: This option skips certificate signature checking, so make check TLS expected failures do not pass. Cleanup of the api.c headers / macros.
2024-08-01 10:27:22 -07:00
Tobias Frauenschläger
aee446f3e5
Build SHA3 assembly with INTEL_SPEEDUP
...
Make sure the file `sha3_asm.S` is compiled when `WOLFSSL_INTEL_ASM` is
enabled using CMake.
Signed-off-by: Tobias Frauenschläger <tobias.frauenschlaeger@oth-regensburg.de >
2024-08-01 16:31:18 +02:00
Juliusz Sosinowicz
4c86219afa
Retry mosquitto tests as they appear to be flaky
2024-08-01 14:17:19 +02:00
Juliusz Sosinowicz
edb5d09e6c
Add rng-tools action
2024-08-01 13:56:37 +02:00
Juliusz Sosinowicz
90861d9e6d
Retry sasl tests as they appear to be flaky
2024-08-01 12:05:33 +02:00
Juliusz Sosinowicz
3943e1324f
Add ntp action
2024-08-01 11:54:47 +02:00
Sean Parkinson
ebb49b6e68
RISC-V ChaCha20: assembly implementations
...
ChaCha20:
scalar and vector implementations
vector implementations doing 6, 4, 2, 1 block at a time.
scalar implemetations using roriw and pack
vector implementations using VROR_VI and roriw.
RISC-V SHA-256: avoid using s0 if it can be helped.
2024-08-01 17:51:59 +10:00
Sean Parkinson
1b8254d668
Merge pull request #7808 from Laboratory-for-Safe-and-Secure-Systems/preTBS_memory_leak
...
Fix memory leak in wc_GeneratePreTBS()
2024-08-01 08:47:47 +10:00
Sean Parkinson
1bc085358a
Merge pull request #7817 from dgarske/wildcard_c
...
Fix for .c files to ensure macro guards for wildcard
2024-08-01 08:46:35 +10:00
David Garske
1dd94bb0cb
Fix for .c files to ensure macro guards for wildcard.
2024-07-31 14:23:05 -07:00
David Garske
54997837f4
Merge pull request #7805 from julek-wolfssl/wolfSSL_X509_REQ_add1_attr_by_NID-push-cleanup
...
wolfSSL_X509_REQ_add1_attr_by_NID: clean up push call for analyzers
2024-07-31 13:16:30 -07:00
David Garske
1ade735579
Merge pull request #7815 from douzzer/20240731-Wconversion
...
20240731-Wconversion
2024-07-31 13:15:08 -07:00
David Garske
7023d5212c
Fix for --enable-all --enable-asn=original.
2024-07-31 13:10:52 -07:00
Daniel Pouzzner
6017c86e5d
wolfcrypt/src/wc_port.c: fix -Wconversions in wc_strdup_ex().
2024-07-31 19:36:59 +00:00
David Garske
548a2c6d8e
Fixed issues building with nocrypt. Improved logic on ASN_BER_TO_DER. Improved logic on unknown extension callback (new WC_ASN_UNKNOWN_EXT_CB gate).
2024-07-31 09:42:46 -07:00
Sean Parkinson
407b78962e
Merge pull request #7811 from lealem47/removeNULL
...
Remove HAVE_NULL_CIPHER from --enable-openssh
2024-07-31 21:55:13 +10:00
Sean Parkinson
dbf88e4c73
Merge pull request #7779 from rizlik/ocsp-dfree-fix
...
ocsp: don't free ocsp request if saved in ssl->ctx->certOcspRequest
2024-07-31 09:31:42 +10:00
Sean Parkinson
ad76038b86
Merge pull request #7812 from dgarske/fix_tls12_secret_callback
...
Fix for TLS v1.2 secret callback, incorrectly detecting bad master secret
2024-07-31 09:29:09 +10:00
David Garske
6a1139a6ee
Merge pull request #7758 from SparkiDev/riscv-sha256-asm
...
RISC-V 64: Add assembly code for SHA-256
2024-07-30 16:23:57 -07:00
Sean Parkinson
31cb72ed8a
Merge pull request #7788 from anhu/kyber_with_fips
...
Allow kyber to be built with FIPS
2024-07-31 09:04:29 +10:00
David Garske
1d9b86e2b0
Fix for TLS v1.2 secret callback, incorrectly detecting bad master secret. API test cleanups (no sleep needed).
2024-07-30 11:54:17 -07:00
David Garske
877c1d781f
Fix bad C89 XSNPRINTF remap.
2024-07-30 10:39:48 -07:00
David Garske
bbbc1e074c
Fixes for clang-tidy.
2024-07-30 10:35:21 -07:00
David Garske
afb6fe6c5f
Fixes for building due to missing OCSP and DecodePolicyOID (--enable-curl and --enable-openssh).
2024-07-30 10:35:21 -07:00
David Garske
20f7d6f9f4
ASN macro simplification. Added new --enable-asn=all and WOLFSSL_ASN_ALL option. Added granular macros for ASN features like: WOLFSSL_ASN_CA_ISSUER, WOLFSSL_ASN_PARSE_KEYUSAGE, WOLFSSL_ASN_TIME_STRING, WOLFSSL_OCSP_PARSE_STATUS.
2024-07-30 10:35:20 -07:00
Lealem Amedie
fb3185bb72
Remove HAVE_NULL_CIPHER from --enable-openssh
2024-07-30 10:46:56 -06:00
András Fekete
50d60bf0e7
Code sonar cleanup ( #7782 )
...
* Fix Warning 826814.9284764
* Fix Warning 826836.9285316
Co-authored-by: Andras Fekete <andras@wolfssl.com >
2024-07-30 09:42:43 -07:00
Daniel Pouzzner
f4c16d22a1
Merge pull request #7806 from SparkiDev/dilithium_der_fix
...
Dilithium: DER encoding fix
2024-07-30 09:43:39 -05:00
Tobias Frauenschläger
36d01cdb9b
Fix memory leak in wc_GeneratePreTBS()
...
In the wc_GeneratePreTBS() method (used for WOLFSSL_DUAL_ALG_CERTS
support), there was a workaround for alt names in certificates, as the
CopyDecodedToX509() method wasn't properly copying them. As a proper
copy mechanism is implemented now, we have to remove the workaround as
it now causes a memory leak of the copied values.
Signed-off-by: Tobias Frauenschläger
<tobias.frauenschlaeger@oth-regensburg.de >
2024-07-30 10:38:48 +02:00
Sean Parkinson
f1e01e4636
RISC-V 64: Add assembly code for SHA-256
...
Move common defines out of AES file to header file.
2024-07-30 12:21:13 +10:00
Sean Parkinson
7da6149250
Merge pull request #7792 from dgarske/sprintf
...
Fix for using sprintf in test.h
2024-07-30 09:18:50 +10:00
Sean Parkinson
1681cb2d7e
Dilithium: DER encoding fix
...
Underlying function SetAsymKeyDer() changed semantics.
Update tests to reflect new behaviour.
2024-07-30 09:09:26 +10:00
David Garske
f9dc5e9f4d
Fixes for uses of deprecated sprintf. If C89 remap XSNPRINTF to use sprintf.
2024-07-29 14:03:44 -07:00
David Garske
6d39a78dba
Fix for using sprintf.
...
Resolves warning:
```
./configure CC="gcc -fsanitize=address" && make
In file included from ./wolfclu/clu_header_main.h:71:
/usr/local/include/wolfssl/test.h:1103:18: error: 'sprintf' is deprecated: This function is provided for compatibility reasons only. Due to security concerns inherent in the design of sprintf(3), it is highly recommended that you use snprintf(3) instead. [-Werror,-Wdeprecated-declarations]
strLen = sprintf(serialMsg, " %s", words[3]);
^
```
2024-07-29 11:22:32 -07:00
David Garske
3fc7be8e3b
Merge pull request #7793 from gojimmypi/pr-platformio-update
...
Update PlatformIO examples to wolfssl 5.7.2
2024-07-29 11:09:30 -07:00
Juliusz Sosinowicz
2d5462d77d
wolfSSL_X509_REQ_add1_attr_by_NID: clean up push call for analyzers
2024-07-29 18:18:07 +02:00
Marco Oliverio
31380aca13
fixup! ocsp: don't free ocsp request if saved in ssl->ctx->certOcspRequest
2024-07-29 15:00:41 +00:00
Sean Parkinson
034af8d99c
Merge pull request #7787 from dgarske/stm32u5a
...
Fix STM32 Hash FIFO and add support for STM32U5A9xx
2024-07-29 17:36:52 +10:00
Sean Parkinson
3b74a64029
Merge pull request #7791 from aidangarske/privkeytoder_fix2
...
`api.c` and `asn.c` changes to allow 0 to be passed in and expanded coverage on test cases.
2024-07-29 09:40:20 +10:00
András Fekete
b1765ca6b4
Merge pull request #7785 from dgarske/asn_original
...
Fixes for ASN original
2024-07-26 14:49:13 -04:00
David Garske
5e58affd5d
Merge pull request #7789 from SparkiDev/test_ssl_load
...
SSL loading of keys/certs: testing and fixes
2024-07-26 11:48:13 -07:00
Sean Parkinson
f7094ff3c4
Dilithium: add option to precalc with small sign ( #7744 )
...
WOLFSSL_DILITHIUM_SIGN_SMALL_MEM_PRECALC added.
It allocates memory for and pre-calculates s1, s2 and t0.
This saves decoding the vectors repeatedly in each signature trial.
2024-07-26 11:46:55 -07:00
David Garske
c3b5322f86
Merge pull request #7753 from SparkiDev/cortexm_label_fix_2
...
Cortex-M/Thumb2 ASM: fix label
2024-07-26 11:45:09 -07:00
Sean Parkinson
caab2c2dca
SSL loading of keys/certs: testing and fixes
...
Added tests to cover ssl_load.c functions.
Fixes from testing.
pk.c: renamed wolfssl_dh_load_key to wolfssl_dh_load_params as it
doesn't handle keys - just parameters.
2024-07-26 11:43:10 +10:00
Daniel Pouzzner
92f1c6e339
Merge pull request #7794 from anhu/custom_ext_stop
...
Stop testing custom extensions in dual alg cert tests.
2024-07-25 16:33:56 -05:00
JacobBarthelmeh
56eed9e059
Merge pull request #7795 from douzzer/20240725-array_add-Wconversion
...
20240725-array_add-Wconversion
2024-07-25 15:19:25 -06:00
Daniel Pouzzner
b40913e80c
wolfcrypt/src/random.c: restore outer cast in array_add() to avoid -Wconversion added in b28e22aef0, itself a fix for a defect added in ed11669f3c (root cause of warning is implicit type promotion).
2024-07-25 15:25:32 -05:00
Anthony Hu
73dc9baaf9
Stop testing custom extensions in dual alg cert tests.
2024-07-25 16:09:19 -04:00
gojimmypi
c2e8121462
Update PlatformIO examples to wolfssl 5.7.2
2024-07-25 12:04:58 -07:00
David Garske
42930b28f3
Merge pull request #7790 from JacobBarthelmeh/random
...
fix for casting with add
2024-07-25 09:13:23 -07:00
aidan garske
55540d03e7
fix for PR#7786 BUFFER_E bad case
2024-07-25 09:03:19 -07:00
JacobBarthelmeh
b28e22aef0
fix for casting with add
2024-07-25 09:16:05 -06:00
aidan garske
dace3acd4d
api.c and asn.c changes to allow 0 to be passed in and expanded coverage on test cases
...
(cherry picked from commit 8572f67e60d419ddd74d4a2b7051dcaa7d0ca6b4)
2024-07-25 08:09:37 -07:00
Anthony Hu
181c408d17
Allow kyber to be built with FIPS
2024-07-24 20:36:51 -04:00
David Garske
c4f73f5955
Peer review cleanups.
2024-07-24 16:57:51 -07:00
Sean Parkinson
324e714a6a
Merge pull request #7750 from space88man/wip-padding-refactor
...
PKCS#11 RSA Padding Offload
2024-07-25 09:20:01 +10:00
David Garske
42403a526e
Fix to resolve STM32 hash FIFO. Simplify logic for ensuring FIFO gets filled before doing a save/restore. ZD 18294
2024-07-24 16:06:04 -07:00
Kaleb Himes
3a4788b7bb
Merge pull request #7783 from douzzer/20240723-AesGcmXcrypt-NULL-in-checks
...
20240723-AesGcmXcrypt-NULL-in-checks
2024-07-24 15:33:42 -06:00
David Garske
7f7d94abd5
Fixes for ASN original (old) to support checking int leading 0 and invalid OID. Disable invalid UTF8 test for old ASN (only supported with newer ASN template).
2024-07-24 12:35:37 -07:00
David Garske
97dcf123f0
Merge pull request #7780 from ColtonWilley/update_zephyr_readme
...
Update zephyr readme
2024-07-24 10:42:44 -07:00
David Garske
4b9d89d387
Fix autoconf issue with ==
2024-07-24 09:10:25 -07:00
David Garske
3e2123f0b3
Disable the ECC custom curve tests for original (old) ASN.
2024-07-24 08:45:19 -07:00
David Garske
007f9ea39d
Fix to restore --enable-asn=original. Fixes for building with ASN original (old). Add the new limit checks for alt names and subtree to the old ASN code.
2024-07-24 08:28:25 -07:00
Marco Oliverio
a1fbfa94d2
tests: add OCSP callback fails test
2024-07-24 15:20:11 +00:00
S-P Chan
d2d71c276d
wolfssl/wolfcrypt/pkcs11.h: RSA PKCS/PSS/OAEP related operations
2024-07-24 22:47:27 +08:00
David Garske
d0782a97ce
Merge pull request #7773 from Laboratory-for-Safe-and-Secure-Systems/kyber_compat
...
Kyber fixes
2024-07-24 07:37:10 -07:00
Tobias Frauenschläger
e2b642d4ab
WolfSSL Kyber and CMake fixes
...
* Make sure wc_kyber implementation is compiled using CMake (also for
Zephyr)
* Fix compilation issue when Liboqs is also enabled
* Fix WOLFSSL_INTEL_ASM and WOLFSSL_ARM_ASM CMake options
Signed-off-by: Tobias Frauenschläger
<tobias.frauenschlaeger@oth-regensburg.de >
2024-07-24 09:55:29 +02:00
Daniel Pouzzner
f8726148df
wolfcrypt/src/aes.c: in wc_AesGcmEncrypt() and wc_AesGcmDecrypt(), check and return BAD_FUNC_ARG for nonzero sizes associated with null pointers.
2024-07-23 19:07:32 -05:00
Sean Parkinson
3284f53574
Cortex-M/Thumb2 ASM: fix label
...
IAR doesn't like %=.
Fix code to be consistent in use of labels and branch instructions.
2024-07-24 09:20:40 +10:00
Sean Parkinson
a34ea32f52
Merge pull request #7730 from anhu/unknownExtCallbackEx
...
Extend the unknown extension callback.
2024-07-24 08:37:44 +10:00
Colton Willey
e1995b8313
Update zephyr readme with link to new instructions for Zephyr TLS socket support
2024-07-23 09:56:17 -07:00
David Garske
140abe6c72
Merge pull request #7746 from douzzer/20240711-linuxkm-cross-compilation
...
20240711-linuxkm-cross-compilation
2024-07-23 09:26:39 -07:00
Marco Oliverio
bb60c58800
ocsp: don't free ocsp request if saved in ssl->ctx->certOcspRequest
2024-07-23 16:02:07 +00:00
Daniel Pouzzner
6ee22de999
linuxkm: initial support for cross-compilation.
...
also, additional backward-compatibility measures around cp and clean recipe in linuxkm/Makefile.
also, in sp_int.c, tweak DECL_DYN_SP_INT_ARRAY() to use an explicit XMEMSET() to clear n[], to avoid unshimmable implicit memset() from gcc on aarch64.
2024-07-23 10:29:03 -05:00
David Garske
8f908e76f9
Merge pull request #7776 from douzzer/20240722-fixes
...
20240722-fixes
2024-07-23 06:46:38 -07:00
David Garske
7c6eb7c4a1
Merge pull request #7751 from SparkiDev/ecc_koblitz_ssl
...
ECC key load: fixes
2024-07-22 16:40:59 -07:00
Daniel Pouzzner
367508f498
wolfcrypt/src/asn.c: in EccSpecifiedECDomainDecode(), in calls to DataToHexString(), cast curve->size to word32 to resolve -Wconversion.
...
wolfcrypt/src/dh.c: in GeneratePrivateDh186(), add explicit suppression of uninitvar for "cBuf" arg that isn't fully initialized.
wolfcrypt/test/test.c: in mp_test_param(), explicitly initialize "buffer" to avoid uninitvar warning.
configure.ac: in FIPS builds, don't include enable_cryptocb in --enable-all or --enable-all-crypto. (they can still be enabled explicitly in FIPS builds with --enable-cryptocb, but the combination is not currently supported.)
2024-07-22 18:21:36 -05:00
Sean Parkinson
a3b6ec4a13
Merge pull request #7716 from anhu/post-hs-auth-check
...
Check the return code when calling post handshake auth functions
2024-07-23 08:20:51 +10:00
Anthony Hu
b1dcdabcd4
Check the return code when calling post handshake auth functions
2024-07-22 17:10:59 -04:00
David Garske
6a26569ddc
Support for STM32U5A9xx board. Fixes for building example with fast math (TFM) and CMSIS OS 2.
2024-07-22 14:09:15 -07:00
gojimmypi
a07a658771
Update Arduino publishing script for 5.7.2 release
2024-07-22 09:32:08 -07:00
David Garske
604a1fe2da
Merge pull request #7774 from Laboratory-for-Safe-and-Secure-Systems/zephyr_v3_7
...
Zephyr V3.7 warning fix
2024-07-22 07:15:46 -07:00
Tobias Frauenschläger
bdfe2c3fdf
Zephyr V3.7 warning fix
...
The required feature flag CONFIG_PTHREAD_IPC is deprecated since Zephyr
version 3.7. The new option is CONFIG_POSIX_THREADS. This change clears
the warning.
Signed-off-by: Tobias Frauenschläger
<tobias.frauenschlaeger@oth-regensburg.de >
2024-07-22 10:58:20 +02:00
David Garske
a9ff7730ce
Merge pull request #7772 from douzzer/20240719-test-hpke-PRIVATE_KEY_UNLOCK
...
20240719-test-hpke-PRIVATE_KEY_UNLOCK
2024-07-20 11:44:08 -07:00
Daniel Pouzzner
765231060e
wolfcrypt/test/test.c: add missing PRIVATE_KEY_UNLOCK() for hpke_test().
2024-07-19 18:31:01 -05:00
Daniel Pouzzner
6952d1a5ea
wolfssl/wolfcrypt/error-crypt.h: add NO_STDIO_FILESYSTEM definition for WC_ERR_TRACE().
2024-07-19 18:30:31 -05:00
David Garske
33f71f6f60
Merge pull request #7770 from bandi13/fixWolfEngineFlag
...
Fix the actual definition of the ECC_MIN_KEY_SZ
2024-07-19 14:37:55 -07:00
David Garske
575df43889
Merge pull request #7768 from JacobBarthelmeh/copyright
...
update copyright to 2024
2024-07-19 14:27:39 -07:00
David Garske
4d8a6b84fb
Merge pull request #7760 from douzzer/20240718-BIO_DGRAM-memory-leak
...
20240718-BIO_DGRAM-memory-leak
2024-07-19 14:24:30 -07:00
David Garske
16a2d2e71d
Merge pull request #7769 from douzzer/20240719-PQ-fixes
...
20240719-PQ-fixes
2024-07-19 14:20:33 -07:00
aidan garske
74e161e437
Merge branch 'InitSuites_Orderadj' of github.com:aidangarske/wolfssl into InitSuites_Orderadj
2024-07-19 13:19:13 -07:00
aidan garske
f8814fb68f
InitSuites changes to order making BUILD_TLS_AES_256_GCM_SHA384 be prioritized over BUILD_TLS_AES_128_GCM_SHA256 to match TLS 1.2.
2024-07-19 13:14:10 -07:00
Andras Fekete
c3d30e7987
Fix the actual definition of the ECC_MIN_KEY_SZ
2024-07-19 16:01:56 -04:00
JacobBarthelmeh
f5ed2460df
cast to larger type for multiplication
2024-07-19 13:59:05 -06:00
Daniel Pouzzner
787397b28e
src/bio.c and related:
...
* refactor WOLFSSL_BIO.num and WOLFSSL_BIO.ptr as unions, for clarity and bug resistance (no functional changes).
* in wolfSSL_BIO_free(), add WOLFSSL_BIO_DGRAM to the test for closing bio->num.fd, fixing a descriptor leak.
* use SOCKET_INVALID consistently as the invalid value for WOLFSSL_BIO.num.fd, and use SOCKET_T consistently as the internal type for file descriptors.
* move the definitions for SOCKET_T and SOCKET_INVALID from wolfio.h to the filesystem section of wc_port.h, and allow override definitions of SOCKET_T.
detected and tested with wolfssl-multi-test.sh ... pq-hybrid-all-rpk-valgrind-unittest. also tested with wolfssl-multi-test.sh ... super-quick-check.
2024-07-19 14:50:26 -05:00
Daniel Pouzzner
e13a8ddcfb
fixes for null derefs in native Dilithium and Kyber implementations, detected by unit.test and cppcheck.
2024-07-19 14:35:39 -05:00
Daniel Pouzzner
0aa0f26289
wolfcrypt/src/dilithium.c: fix null deref in wc_dilithium_init_ex().
2024-07-19 14:25:53 -05:00
JacobBarthelmeh
31a6a2bf59
update copyright to 2024
2024-07-19 13:15:05 -06:00
JacobBarthelmeh
8a9c893c6f
fix for initialization of high value and funtction signature
2024-07-19 11:03:44 -06:00
David Garske
0eeae4da8c
Merge pull request #6460 from embhorn/mosquitto_osp
...
Add support for Mosquitto OSP
2024-07-19 07:49:32 -07:00
David Garske
bd5586623a
Merge pull request #7703 from SparkiDev/def_ticket_cbc_hmac
...
Default session ticket enc/dec: allow AES-CBC with HMAC
2024-07-19 07:41:27 -07:00
David Garske
74d4ae0075
Merge pull request #7704 from aidangarske/PKCS7_PEM
...
Added PKCS7 PEM support:
2024-07-19 07:39:51 -07:00
David Garske
3e02a70c07
Merge pull request #7707 from JacobBarthelmeh/psk
...
use max key length for PSK encrypt buffer size
2024-07-19 07:38:57 -07:00
David Garske
851bb34f3c
Merge pull request #7762 from ColtonWilley/increase_default_max_alt_names
...
Increase default max alt names from 128 to 1024
2024-07-19 07:37:50 -07:00
David Garske
08b211c3bb
Merge pull request #7761 from kareem-wolfssl/zd18300
...
Fix not calling the signing callback when using PK callbacks + TLS 1.3.
2024-07-19 07:37:37 -07:00
David Garske
b5e188830d
Merge pull request #7755 from philljj/misc_cleanup
...
Misc cleanup: FreeX509 null pointer checks, and spelling cleanup.
2024-07-19 07:37:24 -07:00
David Garske
8bf2fb0ae0
Merge pull request #7765 from Laboratory-for-Safe-and-Secure-Systems/dilithium_fixes
...
Dilithium fixes
2024-07-19 07:36:05 -07:00
David Garske
b3c812921a
Merge pull request #7764 from gojimmypi/pr-asn-update
...
minor asn update: comments, code format, dateType check in CheckDate.
2024-07-19 07:35:02 -07:00
Tobias Frauenschläger
f87849b6f6
Dilithium fixes
...
* Fixed incorrect XFREE calls
* Use key->heap where possible
* Fixed compilation with WOLFSSL_DILITHIUM_VERIFY_SMALL_MEM and
WC_DILITHIUM_CACHE_PUB_VECTORS
* Fixed compilation with WOLFSSL_DILITHIUM_ASSIGN_KEY (const pointers)
Signed-off-by: Tobias Frauenschläger
<tobias.frauenschlaeger@oth-regensburg.de >
2024-07-19 07:52:14 +02:00
gojimmypi
8356b349a5
minor asn update: comments, code format, dateType check in CheckDate.
2024-07-18 18:25:53 -07:00
Sean Parkinson
e6fcd488a6
Merge pull request #7685 from dgarske/renesas_rx_tsip
...
Renesas RX TSIP ECDSA support
2024-07-19 10:53:00 +10:00
Sean Parkinson
47dcac657c
Merge pull request #7763 from douzzer/20240718-cppcheck-2v14v2-suppressions
...
20240718-cppcheck-2v14v2-suppressions
2024-07-19 10:03:04 +10:00
David Garske
4eab0f1231
Fix hard coded values in TSIP ECC verify. Fix issues with tab indentation and spelling.
2024-07-18 16:45:27 -07:00
Daniel Pouzzner
4bc04673d1
suppress 4 uninitvar warnings, all associated with passing partially written arrays (true but benign positives). newly detected by cppcheck 2.14.2.
2024-07-18 17:22:17 -05:00
Hideki Miyazaki
945a24e5b4
fix compile error
2024-07-19 06:41:17 +09:00
Colton Willey
a82b76978e
Modify max altname test to run if limit has been lowered
2024-07-18 11:28:11 -07:00
Colton Willey
7434092a3a
Increase default max alt names from 128 to 1024
2024-07-18 11:11:38 -07:00
Kareem
3492caba51
Fix not calling the signing callback when using PK callbacks + TLS 1.3.
2024-07-18 10:33:19 -07:00
JacobBarthelmeh
04ab561a65
add smallstack support for poly1305 w64wrapper
2024-07-18 07:30:08 -06:00
JacobBarthelmeh
902087df6f
add w64wrapper support in poly1305
2024-07-18 07:21:57 -06:00
Sean Parkinson
27c3140c2b
Merge pull request #7757 from douzzer/20240717-fixes
...
20240717-fixes
2024-07-18 10:41:03 +10:00
Daniel Pouzzner
c36ab59f24
fixes for defects identified by nightly testing:
...
* ecc.c: in wc_ecc_free(), fix gating around handling for key->sign_k to resolve memory leak, and in wc_ecc_gen_deterministic_k(), fix -Wconversion.
* test.c: add missing mp_free()s to ecdsa_test_deterministic_k_rs() and ecc521_test_deterministic_k().
* wc_HashType: change several occurrences of int to enum wc_HashType, including ecc_key.hashType and API wc_ecc_set_deterministic_ex(), to resolve C++ warnings.
* fixes for various C++ warnings/errors in crypto and TLS layers and test and benchmark code -- implicit casts, negative initializers for unsigned type, jumped initializers, and missing enums in switch()es.
2024-07-17 18:07:08 -05:00
jordan
6a745518bc
Misc cleanup: FreeX509 null pointer checks, and spelling cleanup.
2024-07-17 10:04:52 -05:00
Sean Parkinson
ec9fcf5353
Merge pull request #7648 from douzzer/20240418-exosip-apis
...
20240418-exosip-apis
2024-07-17 22:59:34 +10:00
David Garske
bbd8fdfc38
Cleanup Renesas RX default devId and improve logic for overflow check.
2024-07-16 17:48:16 -07:00
Daniel Pouzzner
ee7748f2e3
PR7648 20240418-exosip-apis peer review:
...
* tweak typography;
* move wolfSSL_i2d_X509_PUBKEY() from ssl.c to x509.c;
* in asn.h, add !NO_ASN_OLD_TYPE_NAMES macros to remap old names (ISSUER, SUBJECT, BEFORE, AFTER) by default unless the macros are already defined.
2024-07-16 19:12:19 -05:00
Daniel Pouzzner
9023aeef75
BIO/wolfio: refactor TranslateReturnCode(), wolfSSL_LastError(), and TranslateIoError() into complete+consistent wolfSSL_LastError() and TranslateIoReturnCode(), handling all special cases correctly, and correctly returning WOLFSSL_CBIO_ERR_WANT_WRITE and WOLFSSL_CBIO_ERR_TIMEOUT. use TranslateIoReturnCode() directly in wolfIO_Recv(), wolfIO_Send(), wolfIO_RecvFrom(), wolfIO_SendTo(), and remove now-superfluous TranslateIoError() calls from EmbedReceive(), EmbedSend(), EmbedReceiveFrom(), EmbedSendTo(), EmbedReceiveFromMcast().
2024-07-16 19:12:19 -05:00
Daniel Pouzzner
5298039d09
fixes from peer review: move OS-specific code from wolfSSL_BIO_read() and wolfSSL_BIO_write() to wolfIO_Recv(), wolfIO_Send(), wolfIO_RecvFrom(), and wolfIO_SendTo(); add SOCKET_ETIMEDOUT definitions to wolfio.h; misc cleanups.
2024-07-16 19:12:19 -05:00
Daniel Pouzzner
0c1163f01f
src/bio.c: restore inadvertently removed update of bio->connected in wolfSSL_BIO_ctrl() case BIO_CTRL_DGRAM_SET_CONNECTED.
2024-07-16 19:12:18 -05:00
Daniel Pouzzner
9e99544315
wolfssl/ssl.h: fix double-WOLFSSL_API on wolfSSL_CTX_load_verify_locations_compat().
2024-07-16 19:12:18 -05:00
Daniel Pouzzner
1159fc333f
src/bio.c: in wolfSSL_BIO_ADDR_size(), add missing gate on HAVE_SYS_UN_H for AF_UNIX.
2024-07-16 19:12:18 -05:00
Daniel Pouzzner
51c49b678e
src/bio.c: fix gating for WOLFSSL_BIO_DGRAM handling.
2024-07-16 19:12:18 -05:00
Daniel Pouzzner
0a928ead3f
address peer review around WOLFSSL_HAVE_BIO_ADDR:
...
refactor housekeeping for bio->bytes_read and bio->bytes_write, and add WOLFSSL_BIO_HAVE_FLOW_STATS gate;
add WOLFSSL_BIO_FLAG_RETRY housekeeping for WOLFSSL_BIO_SOCKET and WOLFSSL_BIO_DGRAM;
refactor WOLFSSL_BIO.peer_addr to be inline rather than a pointer;
add wolfSSL_set_mtu_compat() and wolfSSL_CTX_load_verify_locations_compat() implementations;
enable WOLFSSL_HAVE_BIO_ADDR and WOLFSSL_DTLS_MTU when OPENSSL_ALL.
2024-07-16 19:12:18 -05:00
Daniel Pouzzner
61eb6987d0
src/ssl.c: remove old version of wolfSSL_set_bio().
2024-07-16 19:12:18 -05:00
Daniel Pouzzner
62db3533ae
wolfSSL_CTX_load_verify_locations(): set up with OpenSSL-compatible behavior (WOLFSSL_LOAD_FLAG_IGNORE_ERR).
2024-07-16 19:12:18 -05:00
Daniel Pouzzner
2d370f3e4e
wolfSSL_BIO_read(): return MEMORY_E if wolfSSL_BIO_ADDR_new() fails.
2024-07-16 19:12:18 -05:00
Daniel Pouzzner
7216a543dd
checkpoint: complete test_wolfSSL_BIO_datagram(); fix some WOLFSSL_HAVE_BIO_ADDR gates to also gate on WOLFSSL_DTLS and OPENSSL_EXTRA; use DTLS_RECVFROM_FUNCTION, DTLS_SENDTO_FUNCTION, SOCKET_T, SOCKADDR, SOCKADDR_IN, and SOCKADDR_IN6 macros and types, and add SOCKADDR_UN type.
2024-07-16 19:12:18 -05:00
Daniel Pouzzner
bd7f7c8bdf
checkpoint: add wolfSSL_BIO_ADDR_free to wolfSSL_BIO_free(); tweak EXPECT_SUCCESS() to tolerate TEST_SKIPPED; add WIP test_wolfSSL_BIO_datagram.
2024-07-16 19:12:18 -05:00
Daniel Pouzzner
29ec038aa6
checkpoint: add WOLFSSL_BIO_ADDR, wolfSSL_BIO_ADDR_new(), wolfSSL_BIO_ADDR_free(), wolfSSL_BIO_ADDR_clear(), wolfIO_SendTo(), wolfIO_RecvFrom(); fix name of wolfSSL_BIO_s_datagram().
2024-07-16 19:12:18 -05:00
Daniel Pouzzner
08940866c3
checkpoint progress: add macro definitions for BIO_CTRL_DGRAM_SET_CONNECTED, BIO_CTRL_DGRAM_SET_PEER, WOLFSSL_MULTI_LABEL_WILDCARDS, WOLFSSL_MULTI_LABEL_WILDCARDS, NID_id_GostR3410_2001, NID_id_GostR3410_2012_256, NID_id_GostR3410_2012_512; fix flag arithmetic in wolfSSL_X509_check_host(); add compat macros for i2d_X509_PUBKEY, BIO_new_dgram.
2024-07-16 19:12:18 -05:00
Daniel Pouzzner
3f921e0a32
checkpoint progress: add wolfSSL_BIO_s_dgram, wolfSSL_BIO_new_dgram, WOLFSSL_BIO_DGRAM, and remove now-duplicate prototype and definition of wolfSSL_X509_STORE_get0_param.
2024-07-16 19:12:18 -05:00
Daniel Pouzzner
8468a70b72
add wolfSSL_i2d_X509_PUBKEY, wolfSSL_X509_VERIFY_PARAM_lookup, and wolfSSL_X509_STORE_get0_param, and make wolfSSL_X509_VERIFY_PARAM_inherit a public API; add macros to openssl compat layer: DTLS_client_method, DTLS_server_method, X509_VERIFY_PARAM_lookup, X509_VERIFY_PARAM_inherit, X509_STORE_get0_param; add "const char *name" slot to struct WOLFSSL_X509_VERIFY_PARAM to support wolfSSL_X509_VERIFY_PARAM_lookup.
2024-07-16 19:12:18 -05:00
Daniel Pouzzner
1e7810153f
add wolfSSL_set_rbio, wolfSSL_set_wbio, wolfSSL_BIO_number_read, wolfSSL_BIO_number_written, and compat layer shim macros SSL_set0_rbio, SSL_set0_wbio, BIO_number_read, BIO_number_written, BIO_reset.
2024-07-16 19:12:18 -05:00
Daniel Pouzzner
41efa0492c
add ASN_ prefixes to ISSUER, SUBJECT, BEFORE, and AFTER enum constants defined in wolfssl/wolfcrypt/asn.h.
2024-07-16 19:12:18 -05:00
Daniel Pouzzner
198f4030e8
add stub implementations of wolfSSL_COMP_get_name(), wolfSSL_get_current_compression(), and wolfSSL_get_current_expansion(), and add compat layer shim macros for them.
2024-07-16 19:12:18 -05:00
Daniel Pouzzner
685bfd1f9d
add wolfSSL_get0_peername() and SSL_set_mtu().
2024-07-16 19:12:18 -05:00
Sean Parkinson
0f3ebedba0
Merge pull request #7700 from aidangarske/ECDSA_deterministic_k
...
ecc.c and test.c changes to add support in ecc_sign_determinsitic.c
2024-07-17 09:12:32 +10:00
JacobBarthelmeh
0be4041479
Merge pull request #7727 from SparkiDev/dilithium_fixed_array
...
Dilithium: support fixed size arays in dilithium_key
2024-07-16 16:54:34 -06:00
aidan garske
237df2cb11
Hash Type selection changes to ecc.c.
2024-07-16 15:17:40 -07:00
Sean Parkinson
500951f059
Dilithium: support fixed size arays in dilithium_key
...
Support fixed size arrays for pre-generated matrix and vectors.
Define: WC_DILITHIUM_FIXED_ARRAY
2024-07-17 07:36:14 +10:00
aidan garske
96af77d757
Hash Type selection changes to ecc.c.
2024-07-16 11:12:29 -07:00
JacobBarthelmeh
bbd769d43a
Merge pull request #7728 from SparkiDev/poly1305_aarch64_uniq_name
...
Poly1305 AArch64: unique naming of asm funcs
2024-07-16 10:10:54 -06:00
Eric Blankenhorn
1112751654
mosquitto workflow update
2024-07-16 10:28:40 -05:00
Eric Blankenhorn
4d247a3a88
Update to mosquitto 2.0.18
2024-07-16 07:37:33 -05:00
Eric Blankenhorn
7aad09fc87
Rebase for mosquitto
2024-07-16 07:37:33 -05:00
Sean Parkinson
e002b6efd3
Merge pull request #7742 from embhorn/zd18240
...
Fix ParseCRL_AuthKeyIdExt setting extAuthKeyIdSet
2024-07-16 09:38:54 +10:00
Sean Parkinson
f2f3a8273d
Merge pull request #7732 from kaleb-himes/NUCLEUS-FIPS-SRTP-KDF
...
Check-in Nucleus Plus 2.3 port work
2024-07-16 09:37:15 +10:00
Sean Parkinson
137831367d
Merge pull request #7710 from anhu/preTBS_altsigalg_fix
...
Stop stripping out the sequence header on the AltSigAlg extension.
2024-07-16 09:35:11 +10:00
Sean Parkinson
0d8763be57
Merge pull request #7665 from anhu/lighty-debug
...
Don't do multithreaded logging tests if single threaded
2024-07-16 09:28:11 +10:00
Sean Parkinson
56b8ac4fa1
Merge pull request #7636 from gojimmypi/PR-ESP8266-Make-Clarification
...
Clarify WOLFSSL_ROOT location for ESP8266 make builds
2024-07-16 09:06:33 +10:00
David Garske
2b4acf5027
Revert built-in wc_GenerateSeed support for RX TSIP removed in #6851 .
2024-07-15 10:10:38 -07:00
Daniel Pouzzner
475ec7b680
Merge pull request #7550 from bandi13/addEnableProvider
...
Add enable provider
2024-07-15 12:08:03 -05:00
David Garske
95f4e0618b
Merge pull request #7747 from lealem47/cubepack_armasm
...
Adding ARM ASM build option to STM32CubePack config
2024-07-15 09:35:44 -07:00
Andras Fekete
5b1e6db9a5
Allow user to override required flags
2024-07-15 09:46:36 -04:00
Sean Parkinson
93ca213a68
Merge pull request #7736 from space88man/fix-pkcs11-slot
...
wolfcrypt/src/wc_pkcs11.c: iterate correctly over slotId
2024-07-15 15:52:40 +10:00
Sean Parkinson
dc86dad26b
ECC key load: fixes
...
asn.c:
Return the curve OID sum with alg_id for ECC keys.
ssl_load.c:
Don't permanently strip the PKCS#8 information as it contains the
curve OID.
2024-07-15 15:46:05 +10:00
Daniel Pouzzner
12ba31967c
Merge pull request #7748 from bandi13/addExtraTestingTools
...
Need to add more dependencies to be able to run all tests
2024-07-12 18:28:42 -05:00
Lealem Amedie
206d3f47f7
Fix typo and disable crypto offload if ARM_ASM enabled
2024-07-12 15:33:37 -06:00
Lealem Amedie
8c76cab2cb
Add comment for new option
2024-07-12 14:59:40 -06:00
Andras Fekete
e7c068b9aa
Add fix to netcat package
2024-07-12 15:48:19 -04:00
aidan garske
82fca1c483
InitSuites changes to order making BUILD_TLS_AES_256_GCM_SHA384 be prioritized over BUILD_TLS_AES_128_GCM_SHA256
2024-07-12 12:45:45 -07:00
Andras Fekete
d21e12851a
Need to add more dependencies to be able to run all tests
2024-07-12 15:31:46 -04:00
Lealem Amedie
8e2775fc89
Adding ARM ASM build option to STM32CubePack config
2024-07-12 13:14:40 -06:00
Eric Blankenhorn
d6731f0f84
Fix ParseCRL_AuthKeyIdExt setting extAuthKeyIdSet
2024-07-12 07:43:23 -05:00
Anthony Hu
f84ea01f72
Get rid of macro test
2024-07-11 21:52:52 -04:00
JacobBarthelmeh
1cf96eb72c
Merge pull request #7741 from douzzer/20240714-asn-Wconversion
...
20240714-asn-Wconversion
2024-07-11 16:48:52 -06:00
JacobBarthelmeh
baec0ced59
Merge pull request #7731 from ColtonWilley/zephyr_tls_support
...
Changes needed for default TLS support in zephyr kernel
2024-07-11 16:46:43 -06:00
Sean Parkinson
e0494b5f04
Merge pull request #7738 from dgarske/pkcs11_rsakeygen
...
Fix to support PKCS11 without RSA key generation
2024-07-12 08:45:53 +10:00
Sean Parkinson
d6ecaaddbd
Merge pull request #7740 from JacobBarthelmeh/readme
...
update changelog for kyber fix, thanks to Antoon Purnal
2024-07-12 08:25:49 +10:00
Colton Willey
978456e39d
Remove get cipher bytes from header
2024-07-11 14:51:38 -07:00
Colton Willey
7b089f548e
Remove get cipher list bytes
2024-07-11 14:39:44 -07:00
Daniel Pouzzner
76f669b1cc
wolfcrypt/src/asn.c: fix -Wconversion in GetLength_ex() added in fea7a89b86.
2024-07-11 14:47:58 -05:00
JacobBarthelmeh
a26476b8b2
update changelog for kyber fix, thanks to Antoon Purnal
2024-07-11 09:01:11 -06:00
Sean Parkinson
3cc7bbea67
Merge pull request #7737 from JacobBarthelmeh/staticmemory-singlethreaded
...
fix for staticmemory and singlethreaded build
2024-07-11 09:57:08 +10:00
Sean Parkinson
0979fe8fea
Merge pull request #7709 from JacobBarthelmeh/staticmemory
...
fix test case for lean static memory build
2024-07-11 09:51:35 +10:00
David Garske
41cf8c090b
Fix compiler issues with unused variable and printf.
2024-07-10 16:07:43 -07:00
Anthony Hu
fe2a826ede
Better guarding.
2024-07-10 18:28:22 -04:00
Anthony Hu
6456281b41
Add support for uknown certificate extensions in PKCS7
2024-07-10 16:15:45 -04:00
David Garske
28db1b19e1
Fix to support PKCS11 without RSA key generation. Fixed Pkcs11Rsa where ret failure could be ignored.
2024-07-10 11:17:02 -07:00
cwilley
db4177ae2c
Merge pull request #7723 from JacobBarthelmeh/max_ext
...
update over max ext test certs and add them to renew script
2024-07-10 11:08:17 -07:00
Anthony Hu
e581930cb7
Extend the unknown extension callback.
...
This will allow the user to pass in a context pointer. Allows them to avoid
global variables.
We also add unknown extensions callback when processing a CA in cert manager
as CA certs can have unknown extensions as well.
Fixes ZD 18252
2024-07-10 13:22:19 -04:00
JacobBarthelmeh
d4741de5dc
Merge pull request #7708 from dgarske/afalg_shake
...
Fix to not allow Shake128/256 with Xilinx AFALG
2024-07-10 10:02:04 -06:00
JacobBarthelmeh
204668778b
Merge pull request #7733 from SparkiDev/coverity_3
...
Coverity fixes
2024-07-10 10:01:29 -06:00
David Garske
9bd0985c87
Merge pull request #7701 from JacobBarthelmeh/testing1
...
with FREERTOS and OPENSSL_ALL add XREMALLOC define
2024-07-10 08:58:02 -07:00
JacobBarthelmeh
2543674d9f
Merge pull request #7721 from SparkiDev/dilithium_fix_3
...
Dilithium: fixes
2024-07-10 09:51:40 -06:00
JacobBarthelmeh
6703a58c51
fix for staticmemory and singlethreaded build
2024-07-10 09:44:10 -06:00
S-P Chan
fdd03fa909
wolfcrypt/src/wc_pkcs11.c: iterate correctly over slotId when searching for token
...
Addresses #7734
2024-07-10 21:01:35 +08:00
Hideki Miyazaki
a5c2290e40
Update key data and set private key for client authentification
2024-07-10 17:13:09 +09:00
Sean Parkinson
fea7a89b86
Coverity fixes
...
pk.c:
EncryptDerKey - setting wrong ret value on allocation failure.
wolfssl_rsa_generate_key_native - now checks e is a valid long
before passing in.
Fix formatting.
ssl_load.c:
ProcessBufferPrivPkcs8Dec - now checking password is not NULL
before zeroizing. Allocation may fail and ForceZero doesn't check for
NULL.
Fix formatting.
tests/api.c:
test_RsaSigFailure_cm - Check cert_sz is greater than zero
before use.
send_new_session_ticket - assert that building the message
doesn't return error or 0.
test_ticket_nonce_malloc - fix setting of medium and big to use
preprocessor. Fix big to be medium + 20.
asn.c:
GetLength_ex - Fix type of bytes so that it can go negative.
sp_int.h:
sp_clamp - add one to ii while it is a signed.
Fix formatting.
2024-07-10 11:40:48 +10:00
kaleb-himes
c333fdf545
Check-in Nucleus Plus 2.3 port work
2024-07-09 15:53:00 -06:00
Colton Willey
4ec07bb5a8
Changes needed for default TLS support in zephyr kernel
2024-07-09 12:00:34 -07:00
Hideki Miyazaki
2d0353bcb1
updae ecc key and signed cert
2024-07-09 20:40:34 +09:00
Sean Parkinson
90836c782b
Poly1305 AArch64: unique naming of asm funcs
...
Change function names to ensure no clash with OpenSSL.
Specifically: poly1305_blocks()
2024-07-09 11:02:10 +10:00
JacobBarthelmeh
6c0aae714f
update over max ext test certs and add them to renew script
2024-07-07 23:38:29 -07:00
Sean Parkinson
d1e26b4f5d
Dilithium: fixes
...
Fix inclusion of functions dilithium_vec_check_low() in build:
--enable-dilithium=verify-only,44,65,87
CFLAGS=-DWOLFSSL_DILITHIUM_VERIFY_SMALL_MEM
Fix memory leaks in unit.test:
--enable-dilithium CFLAGS=-DWC_DILITHIUM_CACHE_MATRIX_A 'CC=clang
-fsanitize=address'
2024-07-08 15:02:43 +10:00
David Garske
4ae277d21e
Fixes for building RX TSIP with e2Studio project. Fixed tsip_Tls13GenEccKeyPair incorrect free of key if TSIP not used (ZD18222).
2024-07-05 07:44:00 -07:00
David Garske
f91d0a2925
Remove hash type check not required for ECDSA deterministic k. Fix _HMAC_K devId.
2024-07-04 14:49:20 -07:00
Anthony Hu
4c13834500
Don't do multithreaded logging tests if single threaded
2024-07-03 19:31:21 -04:00
Anthony Hu
f5e27bfb0c
Stop stripping out the sequence header on the AltSigAlg extension.
2024-07-03 19:02:04 -04:00
David Garske
4335dac794
Add wc_ecc_set_deterministic_ex to support custom hash type for deterministic sign or verify.
2024-07-03 15:13:29 -07:00
David Garske
4004e6886f
Fix the FIPS Shake logic.
2024-07-03 10:39:51 -07:00
JacobBarthelmeh
a8780d4a80
fix test case for lean static memory build
2024-07-03 11:25:05 -06:00
David Garske
d3316b72d3
Fix to not allow Shake128/256 with Xilinx AFALG. Cleanup the Shake disable logic to allow forcing off with WOLFSSL_NO_SHAKE128 and WOLFSSL_NO_SHAKE256.
2024-07-03 09:49:52 -07:00
JacobBarthelmeh
955490e90a
use max key length for PSK encrypt buffer size
2024-07-03 10:17:01 -06:00
Andras Fekete
7cc42d446e
Update the true minimum ECC key size default
...
The discrepancy shows up when trying to compile with FIPS
2024-07-03 11:50:04 -04:00
Andras Fekete
e340e41db3
Add --enable-wolfprovider
2024-07-02 15:57:53 -04:00
Andras Fekete
43b62c8ccf
Make sure the ECC_MIN_SZ is set even when set to default
2024-07-02 15:57:53 -04:00
aidan garske
c065e4a854
Added PKCS7 PEM support: "-----BEGIN PKCS7-----" and "-----END PKCS7-----"
2024-07-02 07:58:01 -07:00
Sean Parkinson
c82081591a
Default session ticket enc/dec: allow AES-CBC with HMAC
...
Add option to use AES-CBC with HMAC for default session ticket enc/dec.
Defaults to AES-128-CBC with HMAC-SHA256.
Options include:
WOLFSSL_TICKET_ENC_HMAC_SHA512 for HMAC-SHA512
WOLFSSL_TICKET_ENC_HMAC_SHA384 for HMAC-SHA384
WOLFSSL_TICKET_ENC_AES256_CBC for AES-256-CBC
2024-07-02 11:34:03 +10:00
David Garske
7ad0248558
Fix for RX TSIP ECDSA Verify hash padding/truncation. Fix to set ECDSA crypto callback "res" on success.
2024-07-01 13:43:26 -07:00
David Garske
9ec29e9ad9
Reduced duplicate code in deterministic test.
2024-07-01 10:35:03 -07:00
David Garske
ac7f44b0dc
Fix the async tests for deterministic sign. The _ex versions cannot be called again. Fix possible leak with async and deterministic sign.
2024-07-01 10:13:28 -07:00
JacobBarthelmeh
72aa6ad178
with FREERTOS and OPENSSL_ALL add XREMALLOC define
2024-07-01 11:00:47 -06:00
aidan garske
c07e7f1e58
Fixed async test for test.c deterministic K.
2024-07-01 09:51:07 -07:00
aidan garske
b5b0e17587
ecc.c and test.c changes to add support in ecc_sign_determinsitic.c for SHA256, SHA384, and SHA512 for SECP256R1, SECP384R1, SECP521R1.
2024-07-01 08:43:32 -07:00
David Garske
73a1938e89
Added Renesas RX TSIP ECDSA Verify Crypto callback.
2024-06-26 17:39:29 -07:00
David Garske
e81e18859b
Support for Renesas RX TSIP with ECDSA and Crypto Callbacks.
...
Fix building ECC with NO_ASN (`./configure --enable-cryptonly --disable-rsa --disable-asn --disable-examples`).
2024-06-25 17:43:16 -07:00
David Garske
7b029d3447
Fixes for building WOLFSSL_RENESAS_TSIP_CRYPTONLY and NO_WOLFSSL_RENESAS_TSIP_CRYPT_HASH.
2024-06-24 16:26:27 -07:00
gojimmypi
20e0e12185
Exclude autogen binaries from ESP8266 client example makefile
2024-06-12 09:51:10 +02:00
gojimmypi
891b986fd4
Clarify WOLFSSL_ROOT location for ESP8266 make builds
2024-06-11 18:13:24 +02:00
Fernando Oleo Blanco
ad25e9b063
[Ada] Clean Alire recipe
2024-05-15 22:33:29 +02:00
Fernando Oleo Blanco
8d49dce2cb
[Ada] Fix crate name in Alire
2024-04-06 01:12:02 +02:00
Fernando Oleo Blanco
afc1e96899
[Ada] Add initial Alire support, alpha version
2024-04-05 23:29:45 +02:00
Fernando Oleo Blanco
77cd3b837b
[Ada] Explicitly add netdb.h support
2024-04-05 23:27:24 +02:00
Fernando Oleo Blanco
4a5373f21b
Add Ada/Alire files to gitignore
2024-04-05 23:23:26 +02:00
Fernando Oleo Blanco
32d0abb407
Merge branch 'wolfSSL:master' into master
2024-04-05 22:11:28 +02:00
Fernando Oleo Blanco
79235a4698
[Ada] Initial library support
2024-03-06 20:20:55 +01:00
John Bland
36c89cc5ad
clean up some post-rebase issues
2024-01-02 20:12:13 -05:00
John Bland
b62f582fcc
copy full inner hashes to hsHashesEch so that it has
...
the unmodified hrr and sh in the digest
2024-01-02 19:33:22 -05:00
John Bland
f6555fd753
update ech to use separate hsHashes for the ech log
...
which are not restarted and the inner hsHashes which are restared on HRR. also send empty string with 0 encLen when sending clientHelloInner2. setup works wolfssl->wolfssl but fails to match acceptance for first HRR message when talking to an openssl server, does still work without HRR when talking to cloudflare's server without HRR.
2024-01-02 19:31:52 -05:00
John Bland
36623f0869
fix ech config parsing to handle 1 byte public name len
2024-01-02 19:30:39 -05:00
John Bland
a5963b4b9f
free the innerClientHello since it may be previously
...
allocated if an hrr happened
2024-01-02 19:30:38 -05:00
John Bland
c0b49ce443
stop double-populating the ech extension since that
...
blows away the ech and it's current hpke context, causing the hrr handling to fail
2024-01-02 19:30:38 -05:00
John Bland
a23edb84d4
only copy the hsHashes if the server is actually using ech
2023-12-29 16:31:13 -05:00
John Bland
4c63ec3fce
fix memory leaks
2023-12-29 16:31:13 -05:00
John Bland
bc77f9f466
fix writing empty string when sending enc in response
...
to an hrr, fix bad getSize for hrr ech, fix using the wrong transcript hash for hrr ech, add new hrr test for ech to api.c
2023-12-29 16:30:34 -05:00
John Bland
167c702b6f
don't mix declaration with code to satisfy compiler
2023-12-29 16:30:34 -05:00
John Bland
000c42ef70
fix implicit cast
2023-12-29 16:30:34 -05:00
John Bland
dfb45bc40e
fix unitialized variable
2023-12-29 16:30:31 -05:00
John Bland
037c44609d
refactor ECH code to handle hrr with special confirmation
2023-12-29 16:29:34 -05:00
John Bland
83d7225236
update ech to use multi use hpke context, still doesn' handle HRR
2023-12-29 16:15:56 -05:00
John Bland
34d7229d4e
add functions for using an hpke context multiple times
2023-12-29 16:15:54 -05:00