Commit Graph
30913 Commits
Author SHA1 Message Date
Sean Parkinson 07353cc6e8 Ed25519 tests: Fix to pass regression testing 2026-07-20 16:11:48 +10:00
JacobBarthelmehandGitHub c1ee61c8d1 Merge pull request #10888 from SparkiDev/kmac_cshake
KMAC and cSHAKE: Add new algorithms
2026-07-17 16:49:25 -06:00
JacobBarthelmehandGitHub 25b5636c30 Merge pull request #10808 from aidankeefe2022/fenrir-fixes-jun29-ak
Fix: WolfCrypt 7 fenrir fixes
2026-07-17 15:49:14 -06:00
JacobBarthelmehandGitHub d65b9ebf68 Merge pull request #10723 from ejohnstown/ocsp-fix
OCSP: opt-in SSRF screening of AIA responder
2026-07-17 14:45:18 -06:00
philljjandGitHub 98f4d6f955 Merge pull request #10721 from JacobBarthelmeh/dev_2
Defensive code additions for sanity checks on input arguments with Base64, PEM write, mp_read_unsigned_bin
2026-07-17 15:34:35 -05:00
John Safranek 6f087a502e OCSP: opt-in SSRF screening of AIA responder
- Add wolfIO_OcspDestAllowed(); block internal-range responder hosts
- Call it in EmbedOcspLookup before connect (CWE-918)
- Gate on WOLFSSL_OCSP_SCREEN_RESPONDER (off by default)
- Add unit tests and CI for both resolver paths
2026-07-17 13:11:16 -07:00
JacobBarthelmehandGitHub 6283bd6db8 Merge pull request #10891 from rlm2002/fipsEcc
add mp_clear(order) before freeing in _ecc_import_private_key_ex()
2026-07-17 13:35:41 -06:00
JacobBarthelmehandGitHub 2281459e2b Merge pull request #10923 from miyazakh/mldsa_verifyonly_op
Fix configure.ac so --enable-mldsa=verify-only
2026-07-17 13:26:43 -06:00
philljjandGitHub dc1c77e079 Merge pull request #10830 from padelsbach/ed25519-cryptocb-only
Add crypto callback only mode for ed25519
2026-07-17 11:42:31 -05:00
JacobBarthelmehandGitHub 3984c8b1dd Merge pull request #10870 from SparkiDev/frodokem_1
FrodoKEM: Initial implementation
2026-07-17 10:14:47 -06:00
JacobBarthelmehandGitHub 575c107249 Merge pull request #10929 from Frauschi/xmss_cmake
CMake: fix XMSS wiring and complete LMS/XMSS sub-option parity
2026-07-17 09:27:12 -06:00
Paul Adelsbach d832415d32 Remove ed25519+fips cryptocb check in settings.h 2026-07-17 06:36:03 -07:00
Sean Parkinson 78df69d051 FrodoKEM: ASN.1 keys, X.509 certicates
Added support for encoding and decoding keys in ASN.1.
Added support for X.509 certificates and CSRs.
Generated certificates and CSRs. Not fo FrodoKEM-640 as is not in the specs.
2026-07-17 22:38:55 +10:00
Sean Parkinson 607d7cfdb3 FrodoKEM: Initial implementation
Supports Fast C code, small C code, small stack and assembly for x86_64, Aarch64, Aarch32, Thumb2.
2026-07-17 22:38:55 +10:00
Tobias Frauenschläger 74bb14aa9f CMake: add LMS verify-only, small and shake256 sub-options
CMake wired only the LMS sha256-192 and no-sha256-256 variants, while
autotools --enable-lms also supports verify-only, small and shake256. Add
the three missing sub-options (WOLFSSL_LMSVERIFYONLY, WOLFSSL_LMSSMALL,
WOLFSSL_LMSSHAKE256), emitting WOLFSSL_LMS_VERIFY_ONLY, WOLFSSL_WC_LMS_SMALL
and WOLFSSL_LMS_SHAKE256, and expose them in the generated options.h so the
CMake and autotools LMS configurations match.
2026-07-17 08:37:35 +02:00
Tobias Frauenschläger 961d5c8a74 CMake: wire WOLFSSL_HAVE_XMSS and add XMSS verify-only/small sub-options
CMake accepted -DWOLFSSL_XMSS=1 but never emitted WOLFSSL_HAVE_XMSS, so
wc_xmss.c compiled empty and options.h advertised no XMSS support. Add the
missing definition block (mirroring LMS) plus WOLFSSL_XMSSVERIFYONLY and
WOLFSSL_XMSSSMALL sub-options for parity with autotools --enable-xmss=
verify-only,small, and expose all three in the generated options.h.

Also enable WOLFSSL_XMSS in the cmake.yml CI build, which tested LMS but
not XMSS -- the blind spot that let this regression through.
2026-07-17 08:37:35 +02:00
jackctj117andGitHub 2c5e135bf9 Merge pull request #10934 from kaleb-himes/ISOLATED-FIXES
Bare minimum change set to stabalize fips-ready
2026-07-16 16:25:34 -06:00
JacobBarthelmehandGitHub 4e27e2ca63 Merge pull request #10893 from SparkiDev/riscv64_asm_1
RISC-V 64-bit: rework assembly code.
2026-07-16 16:10:46 -06:00
JacobBarthelmehandGitHub 5418d6cfdc Merge pull request #10927 from danielinux/fix-error-consistency-with-debug
Hash: consistent error code for uninitialized wc_Hash ops under DEBUG_WOLFSSL
2026-07-16 15:06:51 -06:00
kaleb-himes 432d5e375d Bare minimum change set to stabalize fips-ready 2026-07-16 11:03:07 -06:00
Aidan Keefe 15d2b469e0 https://fenrir.wolfssl.com/finding/6438
https://fenrir.wolfssl.com/finding/5414

https://fenrir.wolfssl.com/finding/5414

https://fenrir.wolfssl.com/finding/5415

https://fenrir.wolfssl.com/finding/6165

https://fenrir.wolfssl.com/finding/6167

https://fenrir.wolfssl.com/finding/6177

https://fenrir.wolfssl.com/finding/6166

skoll issues
2026-07-16 11:01:48 -06:00
JacobBarthelmehandGitHub 43936e64c8 Merge pull request #10914 from stenslae/fix/apache-mynewt-header-build
Apache mynewt header build fix
2026-07-16 10:24:18 -06:00
JacobBarthelmehandGitHub 08539e40a6 Merge pull request #10903 from miyazakh/f_issues_SCE
[Renesas RA6M4] Fix Renesas RA6M4 SCE session-key generation issues
2026-07-16 10:04:52 -06:00
JacobBarthelmehandGitHub 7a062fd563 Merge pull request #10924 from holtrop-wolfssl/zd22155
Rust wrapper: check DH::shared_secret buffer size against prime size
2026-07-16 10:01:55 -06:00
Josh Holtrop 708357c403 Rust wrapper: check DH::shared_secret buffer size against prime size
The underlying C API treats the agreeSz parameter as output-only.
2026-07-15 23:37:49 -04:00
Hideki Miyazaki 85454ab3d9 Fix configure.ac so --enable-mldsa=verify-only 2026-07-16 11:52:36 +09:00
Sean Parkinson 3606633b22 RISC-V 64-bit: rework assembly code.
Assembly code generated from scripts.
Have separate assembly files and new inline code.
2026-07-16 09:39:09 +10:00
JacobBarthelmehandGitHub 139522b92d Merge pull request #10892 from embhorn/gh10792
Reject HelloRetryRequest lacking supported_versions before downgrade
2026-07-15 15:53:05 -06:00
JacobBarthelmehandGitHub 8510488d6b Merge pull request #10910 from Frauschi/lms_xmss_test_fix
Testing: unique per-process temp paths for stateful LMS/XMSS key tests
2026-07-15 15:48:22 -06:00
Daniele Lacamera 546b78c14c hash: consistent error code for uninitialized wc_Hash ops under debug
Under DEBUG_WOLFSSL the hash->type != type check in wc_HashUpdate,
wc_HashFinal and wc_HashFree fired for an uninitialized hash
(hash->type == WC_HASH_TYPE_NONE), returning BAD_FUNC_ARG where a non-debug
build returns HASH_TYPE_E from the type switch, so the returned error code
depended on whether DEBUG_WOLFSSL was defined. Only apply the mismatch check
to initialized hashes; the genuine init-then-wrong-type misuse check is
preserved.
2026-07-15 23:44:40 +02:00
Daniel PouzznerandGitHub fc74ebdc74 Merge pull request #10885 from philljj/fips_v7_guards
random.c: fix fips v7 define guards.
2026-07-15 16:34:22 -05:00
JacobBarthelmehandGitHub 05c84bcd94 Merge pull request #10908 from LinuxJedi/valgrind-fixes
Fix a couple of Valgrind hits
2026-07-15 15:27:49 -06:00
Emma Stensland 5bd7348512 apache mynewt header build fix 2026-07-15 11:55:59 -06:00
Tobias FrauenschlägerandDaniele Lacamera 9d86960672 Fix AES GCM decrypt auth tag failure test 2026-07-15 15:10:52 +02:00
Tobias Frauenschläger fc87614cdc Testing: unique per-process temp paths for stateful LMS/XMSS key tests
The LMS and XMSS X.509 generation tests persist their stateful private
keys through read/write callbacks to hardcoded /tmp paths
(/tmp/wolfssl_test_lms.key, /tmp/wolfssl_test_xmss_gen.key). When
make check runs multiple configs in parallel on a shared /tmp (CI
shards), concurrent unit.test processes clobber the same file; a
subsequent read then gets a different-sized key and signing fails with
IO_FAILED_E (e.g. test_rfc9802_xmss_x509_gen returning -291).

Give the LMS and XMSS test key-file paths a per-process name via
getpid(), guarded by HAVE_GETPID/WOLFSSL_NO_GETPID with <unistd.h>
included under the same guard and a plain-path fallback, so the file
still compiles on Windows / NO_WOLFSSL_DIR / no-OS builds. Verified by
racing six concurrent unit.test processes: 5/6 failed before, 6/6 pass
after; the HAVE_GETPID and fallback paths both compile clean under
-Werror.
2026-07-15 14:08:19 +02:00
Andrew Hutchings 8066fbceaa Fix a couple of Valgrind hits
```
==485951==  Uninitialised value was created by a stack allocation
==485951==    at 0x207D47: des3_key_wrap_test (test.c:12773)
```

and

```
==485951==  Uninitialised value was created by a stack allocation
==485951==    at 0x3A075E: test_wc_AesGcmArgMcdc (test_aes.c:8968)
```
2026-07-15 11:28:45 +01:00
Tobias FrauenschlägerandGitHub 986fed770c Merge pull request #10907 from SparkiDev/asm_include_fix
Include the correct wolfSSL header for inline C asm.
2026-07-15 10:44:47 +02:00
Tobias FrauenschlägerandGitHub 55d06ec678 Merge pull request #10866 from kojo1/rsaKeySz
check RSA key size for PSS
2026-07-15 10:43:43 +02:00
Tobias FrauenschlägerandGitHub c327ea36bf Merge pull request #10904 from aidangarske/fix/pkcs7-stream-signed-content
Fix PKCS7 streamed SignedData dropping content
2026-07-15 09:43:34 +02:00
Sean Parkinson b0dfa35bbe Include the correct wolfSSL header for inline C asm.
wolfssl/wolfcrypt/libwolfssl_sources_asm.h is for assembly files.
wolfssl/wolfcrypt/libwolfssl_sources.h is for C files.
2026-07-15 17:40:19 +10:00
Tobias FrauenschlägerandGitHub 2494da4a46 Merge pull request #10895 from danielinux/aes-gcm-fix-ct-compare
AES-GCM: constant-time output clear on decrypt auth failure
2026-07-15 08:54:27 +02:00
Tobias FrauenschlägerandGitHub a182896115 Merge pull request #10906 from SparkiDev/test_fixes_4
Testing fixes: unit.test - PKCS#7 and --send-ticket
2026-07-15 08:22:06 +02:00
Sean Parkinson 043f798ef8 Testing fixes: unit.test - PKCS#7 and --send-ticket
test_pkcs7.c: test_wc_PKCS7_BER also accepts ret >= 0 (Bleichenbacher mitigation hides the RSA key error, making the result non-deterministic).
suites.c: skip --send-ticket cases as NOT_BUILT_IN when HAVE_SESSION_TICKET
  is off (avoids port-11111 race).
2026-07-15 11:28:08 +10:00
aidan garske 9b1aad457d Fix PKCS7 streamed SignedData dropping content 2026-07-14 16:47:31 -07:00
JacobBarthelmehandGitHub 26538a252c Merge pull request #10884 from kareem-wolfssl/zd22127_2
Adjust wolfEntropy size calculation and error out if an invalid combination of settings is given.
2026-07-14 16:12:50 -06:00
Takashi Kojo 14d939b801 Key-size check for RSA-PSS/SHA-256/384/512 2026-07-15 06:53:13 +09:00
Hideki Miyazaki c0c2588baf addressed review comments 2026-07-15 06:03:03 +09:00
Hideki Miyazaki 3fac5bf57b Addressed comments 2026-07-15 06:03:03 +09:00
Hideki Miyazaki 36a9e4404e fix fenrir issues for Renesas SCE 2026-07-15 06:03:02 +09:00
Daniele Lacamera 3ad29463ff test: exclude WOLFSSL_RISCV_ASM from AES-GCM auth-fail zero-check
The RISC-V ASM build provides its own AES-GCM implementation
(wolfcrypt/src/port/riscv/riscv-64-aes.c) rather than AES_GCM_decrypt_C, so
it does not clear the output buffer on authentication failure. Exclude it
from the zero-check, matching the other non-C decrypt paths. Fixes the
riscv64 multi-arch testwolfcrypt failure.
2026-07-14 20:17:48 +02:00