Commit Graph

28712 Commits

Author SHA1 Message Date
David Garske 3b63f4bdee Merge pull request #10072 from night1rider/extend-cmac-api-id-label
Extend/Add label/id extension functions
2026-04-13 08:15:46 -07:00
Sean Parkinson a50a5403a7 Merge pull request #10199 from douzzer/20260412-clang-23_pre20260331
20260412-clang-23_pre20260331
2026-04-13 10:39:11 +10:00
Sean Parkinson 1cd1872abf Merge pull request #10179 from Frauschi/mlkem-alloc-key
Add dynamic key allocation support for ML-KEM
2026-04-13 09:35:34 +10:00
Sean Parkinson 0434139967 Merge pull request #10186 from Frauschi/f-159
Error out in case of unknown extensions in response message in TLS 1.3
2026-04-13 09:18:46 +10:00
David Garske 3d4e929869 Merge pull request #10173 from SparkiDev/init_cert_sha1
Initialize certificate: default to SHA-1 when necessary
2026-04-12 14:46:53 -07:00
David Garske 77b0939a8f Merge pull request #10176 from SparkiDev/aes_gcm_small_armasm_fix
ARM ASM: AES-GCM small table without NEON
2026-04-12 14:46:44 -07:00
Daniel Pouzzner 1b692b8063 fixes for clang -Wunused-but-set-globals (coverage added by LLVM 23_pre20260331). 2026-04-12 12:07:33 -05:00
Daniel Pouzzner d343ea657b Merge pull request #10190 from rlm2002/mlkem_valgrind
Nightly-multi-test valgrind fix
2026-04-11 13:09:13 -05:00
David Garske ae0a3877ca Merge pull request #10122 from miyazakh/f-1370_SigGetSize
F-1370 : Tighten key_len check from `>=` to `==`
2026-04-10 14:27:16 -07:00
David Garske e673316f80 Merge pull request #10177 from julek-wolfssl/add-missing-bwrap
Add bwrap network namespace isolation to scripts with listening ports
2026-04-10 14:24:07 -07:00
David Garske ddf4666031 Merge pull request #10077 from Frauschi/pkcs11-mlkem
Add ML-KEM support for PKCS#11
2026-04-10 14:22:47 -07:00
night1rider 3fa0fb78f2 Add (void)ret after CRYPTOCB_UNAVAILABLE fall-through reset in _InitCmac_common to acknowledge intentional store. 2026-04-10 13:19:01 -06:00
night1rider 24c40b543b reset ret after CRYPTOCB_UNAVAILABLE fall-through in _InitCmac_common, add test_RsaInit_Pub/test_RsaNew_Pub helpers for keypub, re-add (void)heap, reject oversized CMAC id. 2026-04-10 13:19:01 -06:00
night1rider 8b49e0abf0 Fix -Wcast-qual errors by replacing void* with typed id/label params in _common helpers and add input validation. 2026-04-10 13:19:01 -06:00
night1rider 88396d7d12 Fix -Wcast-qual errors in _Label functions by making _common helpers accept const void* data parameter. 2026-04-10 13:19:01 -06:00
night1rider 48e8442e35 Add test/bench_AesEcbInit helper 2026-04-10 13:19:01 -06:00
night1rider c74f01a1a0 change WC_TEST_NO_ECC_CHECK_KEY to WC_TEST_SKIP_ECC_CHECK_KEY 2026-04-10 13:19:01 -06:00
night1rider ebdbc8e3d7 Add WC_TEST_SKIP_RSA_PRIVATE_EXPORT to test.c 2026-04-10 13:19:01 -06:00
night1rider 3e112a380b Extend CMAC API to pull in label/id extension functions to pass down to the AES init call
Refactor CMAC init to common function, add wc_AesNew_Id/Label API, do same for RSA new
functions, and add test init helpers for id[] support along with some test disable options
2026-04-10 13:19:00 -06:00
David Garske 4b7ff29b2b Merge pull request #10185 from JacobBarthelmeh/docs
update changelog notes
2026-04-10 11:51:13 -07:00
Ruby Martin 9a8610ca03 increase rand buffer, fix valgrind invalid read size 16 2026-04-10 11:26:51 -06:00
David Garske 9c7257bb7c Merge pull request #10146 from Frauschi/ci_tests
Remove some duplicate CI tests
2026-04-10 09:54:28 -07:00
David Garske 51cd66d0e8 Merge pull request #10106 from BrianAker/fix/remove-unused-m4
Remove unused m4 macros and update AX_PTHREAD
2026-04-10 08:56:24 -07:00
Tobias Frauenschläger b0763ea4d1 Error out in case of unknown extensions in response message in TLS 1.3 2026-04-10 17:43:35 +02:00
Tobias Frauenschläger b7cc7adab8 Add dynamic key allocation support for ML-KEM
Introduce the WOLFSSL_MLKEM_DYNAMIC_KEYS option to allow dynamic allocation
of private and public key buffers in the MlKemKey struct. This change
enables right-sizing of buffers based on the actual ML-KEM level and eliminates
unnecessary memory usage for encapsulate-only operations.
2026-04-10 17:20:21 +02:00
Tobias Frauenschläger 9c2dbac668 os-check: split platform-agnostic configs to Linux-only job
Split make_check into two jobs to reduce CI time:

- make_check: 37 configs that interact with platform-specific features
  (sys-ca-certs, Apple Security.framework, OpenSSL compat, networking)
  continue to run on both Ubuntu and macOS.

- make_check_linux: 17 configs testing pure crypto algorithms,
  preprocessor guards, or features with no macOS-specific code paths
  now run on Linux only.

Also change make_user_settings_testwolfcrypt to Linux-only since
testwolfcrypt runs pure crypto tests with no platform-specific features.

Saves ~33 CI jobs with no loss of test coverage.
2026-04-10 12:50:24 +02:00
Tobias Frauenschläger 585a1ecaaf CI script improvements
* ensure make -j is called everywhere
* shallow clones where possible
* set fixed ubuntu version for linux tests
2026-04-10 12:50:24 +02:00
Tobias Frauenschläger 062ef3e93b Remove some duplicate CI tests 2026-04-10 12:50:24 +02:00
Tobias Frauenschläger 85dd923355 cryptocb: always run software cleanup in key Free functions
The WOLF_CRYPTO_CB_FREE path in wc_MlKemKey_Free, wc_dilithium_free,
and wc_ecc_free returned early when the crypto callback succeeded,
skipping local cleanup: ForceZero on private key material, PRF/hash
object frees (ML-KEM), SHAKE free and cached vector frees (ML-DSA),
and mp_forcezero on the private scalar and all hardware port frees
(ECC).

Any non-PKCS#11 callback returning 0 would silently leave key material
in memory. The PKCS#11 backend worked around this by returning
CRYPTOCB_UNAVAILABLE on success to force the fallthrough — a fragile
contract that is not part of the documented callback interface.

Fix by always continuing to software cleanup after invoking the
callback.

Remove the CRYPTOCB_UNAVAILABLE workaround from the three PKCS#11 free
dispatchers (ECC, ML-DSA, ML-KEM); they now return the real result of
C_DestroyObject.
2026-04-10 12:23:57 +02:00
Tobias Frauenschläger 21f1587c26 PKCS#11: add ML-KEM support
Add PKCS#11 integration for ML-KEM with key generation,
encapsulation and decapsulation support through the crypto
callback path.

Includes ML-KEM PKCS#11 constants/types, key store handling,
token object lifecycle management, and ML-KEM key init helpers
for private-key ID/label workflows.

Align implementation details with current upstream conventions
and review feedback:
- internal wolfCrypt ML-KEM path only for PKCS#11
- inline ML-KEM key-type/flag checks in PKCS#11 code
- proper key template formatting and enum placement
- ensure TLS ML-KEM object storage behavior is compatible with
  PKCS#11 ephemeral-key decapsulation flow
2026-04-10 12:23:37 +02:00
Hideki Miyazaki e04fe0c347 fix typo 2026-04-10 15:26:16 +09:00
JacobBarthelmeh 43f06851f1 update changelog notes 2026-04-09 20:45:59 -06:00
Sean Parkinson 41aae56ab8 ARM ASM: AES-GCM small table without NEON
Non-neon GCM_gmult_len requires M0 which is not available with a small
build.
Fix to have C implementation when M0 and NEON not available.
2026-04-10 08:06:17 +10:00
Sean Parkinson ecd925f10e Initialize certificate: default to SHA-1 when necessary
Make SHA-1 with RSA signature type the last option.
SHA-1 signatures are deprecated as weak.
2026-04-10 07:58:37 +10:00
Sean Parkinson abfff1ec2f Merge pull request #10167 from embhorn/zd21571
Fix ETM on resumption
2026-04-10 07:45:20 +10:00
David Garske 8059fbdbe8 Merge pull request #10129 from rlm2002/coverity_fix
03042026 Coverity tests fix
2026-04-09 13:35:36 -07:00
David Garske 9e199f3ae7 Merge pull request #10165 from rlm2002/coverity
Coverity fix
2026-04-09 13:34:26 -07:00
David Garske cc72851694 Merge pull request #10026 from LinuxJedi/actions-composite-caching
Composite GHA action with caching
2026-04-09 12:01:24 -07:00
David Garske a91096501f Merge pull request #10153 from sebastian-carpenter/GH-10067
do not enable TLSX with --enable-ech
2026-04-09 11:43:52 -07:00
David Garske a3ef93567e Merge pull request #10147 from julek-wolfssl/ocsp-responder-docs
Add documentation for new OCSP responder and cert accessor APIs
2026-04-09 11:42:03 -07:00
Eric Blankenhorn 31eb54f950 Fix from review 2026-04-09 11:32:47 -05:00
JacobBarthelmeh 044a5f8b81 Merge pull request #10143 from dgarske/qat_aes_gcm
Improve QAT AES GCM tag checking
2026-04-09 09:40:25 -06:00
Eric Blankenhorn 191b827579 Fix from review 2026-04-09 10:14:45 -05:00
Juliusz Sosinowicz fd63d6c20e Add bwrap network namespace isolation to scripts with listening ports
Add NETWORK_UNSHARE_HELPER/bwrap wrapping to benchmark.test,
openssl_srtp.test, and sniffer-gen.sh to isolate network namespaces and
prevent port collisions when tests run concurrently. sniffer-gen.sh uses
--cap-add ALL (like dtls.test) since it runs tcpdump. ocsp-stapling.test
is excluded because it connects to external servers (login.live.com).
2026-04-09 13:56:14 +02:00
Sean Parkinson 3e0679ee17 Merge pull request #10156 from douzzer/20260407-SHA3-unaligned-access
20260407-SHA3-unaligned-access
2026-04-09 18:47:06 +10:00
Sean Parkinson 6617863249 Merge pull request #10145 from Frauschi/ecc_follow_up
ECC curve validation follow-up
2026-04-09 18:35:56 +10:00
Sean Parkinson 2a064607e4 Merge pull request #10150 from julek-wolfssl/enable-ocsp-responder-disable-tls13
Guard OCSP signature params with WC_RSA_PSS ifdef
2026-04-09 18:13:00 +10:00
Sean Parkinson 139042e6d5 Merge pull request #10159 from Frauschi/dual_alg_fix
Fix build failure for DUAL_ALG_CERTS
2026-04-09 18:00:47 +10:00
Eric Blankenhorn b218b29403 Fix from review 2026-04-08 16:13:23 -05:00
Eric Blankenhorn af5369636a Fix ETM on resumption 2026-04-08 15:06:11 -05:00