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
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
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
gojimmypi
a08b93347f
Revised sockets for USE_WOLFSSL_IO, USE_WOLFSSL_IO
2025-07-16 15:18:14 -07:00
gojimmypi
66650a95d8
Improve WOLFSSL_USER_IO defaults
2025-07-16 12:04:05 -07:00
Josh Holtrop
af3296a836
wc_PKCS7_KeyWrap(): mark pointers as to const and check for NULL
2025-07-14 17:28:23 -04:00
Josh Holtrop
429ccd5456
Add callback functions for custom AES key wrap/unwrap operations
2025-07-14 15:58:14 -04: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
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
01cd91cbea
removing more locations of WOLFSSL_API used with function implementations
2025-07-10 16:44:28 -06: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
Kareem
bfacbf9764
Update ASN original to also allow larger pathLen values in Basic Constraints.
2025-07-10 11:47:47 -07:00
Kareem
f0459eb1cf
Allow larger pathLen values in Basic Constraints.
2025-07-10 10:37:06 -07:00
Anthony Hu
4bd2835cf1
Change suggested by SparkiDev
2025-07-10 10:40:12 -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