Skip to content

Commit ced05eb

Browse files
committed
Merge branch 'master' into lpc55s69_crypto
2 parents 5a9d57d + 1da353b commit ced05eb

116 files changed

Lines changed: 22315 additions & 1551 deletions

File tree

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

.github/workflows/hostap-files/configs/07c9f183ea744ac04585fb6dd10220c75a5e2e74/tests

Lines changed: 0 additions & 17 deletions
Original file line numberDiff line numberDiff line change
@@ -248,9 +248,6 @@ ap_wpa2_eap_tls_check_cert_subject_neg
248248
ap_wpa2_eap_tls_diff_ca_trust2
249249
ap_wpa2_eap_tls_domain_mismatch_cn
250250
ap_wpa2_eap_tls_domain_suffix_mismatch_cn
251-
ap_wpa2_eap_tls_intermediate_ca_ocsp_multi_missing_resp
252-
ap_wpa2_eap_tls_intermediate_ca_ocsp_revoked_sha1
253-
ap_wpa2_eap_tls_intermediate_ca_ocsp_sha1
254251
ap_wpa2_eap_tls_neg_incorrect_trust_root
255252
ap_wpa2_eap_tls_ocsp_multi
256253
ap_wpa2_eap_tls_ocsp_multi_revoked
@@ -649,9 +646,6 @@ dpp_config_dpp_gen_secp521r1
649646
dpp_config_dpp_gen_secp521r1_prime256v1
650647
dpp_config_dpp_gen_secp521r1_secp384r1
651648
dpp_config_dpp_gen_secp521r1_secp521r1
652-
dpp_config_dpp_override_prime256v1
653-
dpp_config_dpp_override_secp384r1
654-
dpp_config_dpp_override_secp521r1
655649
dpp_config_error_legacy_invalid_psk
656650
dpp_config_error_legacy_no_pass
657651
dpp_config_error_legacy_no_pass_for_sae
@@ -691,7 +685,6 @@ dpp_config_no_discovery
691685
dpp_config_no_discovery_ssid
692686
dpp_config_no_signed_connector
693687
dpp_config_no_wi_fi_tech
694-
dpp_config_override_objects
695688
dpp_config_root_not_an_object
696689
dpp_config_save
697690
dpp_config_save2
@@ -748,12 +741,6 @@ dpp_hostapd_configurator_enrollee_v1
748741
dpp_hostapd_configurator_fragmentation
749742
dpp_hostapd_configurator_override_objects
750743
dpp_hostapd_configurator_responder
751-
dpp_hostapd_enrollee_fragmentation
752-
dpp_hostapd_enrollee_gas_errors
753-
dpp_hostapd_enrollee_gas_proto
754-
dpp_hostapd_enrollee_gas_timeout
755-
dpp_hostapd_enrollee_gas_timeout_comeback
756-
dpp_hostapd_enrollee_gas_tx_status_errors
757744
dpp_intro_mismatch
758745
dpp_invalid_configurator_key
759746
dpp_invalid_legacy_params
@@ -906,10 +893,6 @@ dpp_qr_code_auth_incompatible_roles2
906893
dpp_qr_code_auth_incompatible_roles_failure
907894
dpp_qr_code_auth_incompatible_roles_failure2
908895
dpp_qr_code_auth_incompatible_roles_failure3
909-
dpp_qr_code_auth_initiator_either_1
910-
dpp_qr_code_auth_initiator_either_2
911-
dpp_qr_code_auth_initiator_either_3
912-
dpp_qr_code_auth_initiator_enrollee
913896
dpp_qr_code_auth_mutual
914897
dpp_qr_code_auth_mutual2
915898
dpp_qr_code_auth_mutual_bp_256

.github/workflows/hostap-files/configs/b607d2723e927a3446d89aed813f1aa6068186bb/tests

Lines changed: 0 additions & 13 deletions
Original file line numberDiff line numberDiff line change
@@ -347,7 +347,6 @@ ap_wpa2_eap_tls_ocsp_server_signed
347347
ap_wpa2_eap_tls_ocsp_invalid_data
348348
ap_wpa2_eap_tls_ocsp_invalid
349349
ap_wpa2_eap_tls_ocsp_unknown_sign
350-
ap_wpa2_eap_tls_intermediate_ca
351350
ap_wpa2_eap_tls_ocsp_multi_revoked
352351
ap_wpa2_eap_tls_domain_suffix_match_cn_full
353352
ap_wpa2_eap_tls_domain_match_cn
@@ -461,9 +460,6 @@ dpp_qr_code_auth_mutual_not_used
461460
dpp_qr_code_auth_mutual_curve_mismatch
462461
dpp_qr_code_auth_hostapd_mutual2
463462
dpp_qr_code_listen_continue
464-
dpp_qr_code_auth_initiator_enrollee
465-
dpp_qr_code_auth_initiator_either_2
466-
dpp_qr_code_auth_initiator_either_3
467463
dpp_config_legacy
468464
dpp_config_legacy_psk_hex
469465
dpp_config_fragmentation
@@ -475,9 +471,6 @@ dpp_config_dpp_gen_secp521r1
475471
dpp_config_dpp_gen_expiry
476472
dpp_config_dpp_gen_expired_key
477473
dpp_config_dpp_gen_3rd_party
478-
dpp_config_dpp_override_prime256v1
479-
dpp_config_dpp_override_secp384r1
480-
dpp_config_override_objects
481474
dpp_config_signed_connector_error_no_dot_1
482475
dpp_config_signed_connector_error_no_dot_2
483476
dpp_config_signed_connector_error_unexpected_signature_len
@@ -579,12 +572,6 @@ dpp_pkex_nak_curve_change2
579572
dpp_hostapd_configurator
580573
dpp_hostapd_configurator_responder
581574
dpp_hostapd_configurator_fragmentation
582-
dpp_hostapd_enrollee_fragmentation
583-
dpp_hostapd_enrollee_gas_timeout
584-
dpp_hostapd_enrollee_gas_timeout_comeback
585-
dpp_hostapd_enrollee_gas_errors
586-
dpp_hostapd_enrollee_gas_proto
587-
dpp_hostapd_enrollee_gas_tx_status_errors
588575
dpp_hostapd_configurator_override_objects
589576
dpp_own_config
590577
dpp_own_config_group_id

.github/workflows/hostap-vm.yml

Lines changed: 18 additions & 18 deletions
Original file line numberDiff line numberDiff line change
@@ -2,14 +2,10 @@ name: hostap and wpa-supplicant Tests
22

33
# START OF COMMON SECTION
44
on:
5-
workflow_dispatch: # Allows people to run it manually if they want but
6-
# disables it from running automatically when broken
7-
# To restore this to an auto test delete the above workflow_dispatch line and
8-
# comments and uncomment the below lines for push and pull_request
9-
# push:
10-
# branches: [ 'master', 'main', 'release/**' ]
11-
# pull_request:
12-
# branches: [ '*' ]
5+
push:
6+
branches: [ 'master', 'main', 'release/**' ]
7+
pull_request:
8+
branches: [ '*' ]
139

1410
concurrency:
1511
group: ${{ github.workflow }}-${{ github.ref }}
@@ -230,16 +226,6 @@ jobs:
230226
working-directory: hostap
231227
run: git checkout ${{ matrix.config.hostap_ref }}
232228

233-
- name: Update certs
234-
working-directory: hostap/tests/hwsim/auth_serv
235-
run: |
236-
./update.sh
237-
./sha512-generate.sh
238-
# Force regeneration of rsa3072-ca.key to get rsa3072-generate.sh to
239-
# correctly update all the certs
240-
rm rsa3072-ca.key
241-
./rsa3072-generate.sh
242-
243229
- if: ${{ matrix.config.osp_ref }}
244230
name: Checkout OSP
245231
uses: actions/checkout@v4
@@ -258,6 +244,20 @@ jobs:
258244
patch -p1 < $f
259245
done
260246
247+
- name: Update certs
248+
working-directory: hostap/tests/hwsim/auth_serv
249+
run: |
250+
mkdir -p rootCA/newcerts
251+
./update.sh
252+
./ec-generate.sh
253+
./ec2-generate.sh
254+
./sha512-generate.sh
255+
# Force regeneration of rsa3072-ca.key to get rsa3072-generate.sh to
256+
# correctly update all the certs
257+
rm rsa3072-ca.key
258+
./rsa3072-generate.sh
259+
./ica-generate.sh
260+
261261
- name: Apply extra patches
262262
working-directory: hostap
263263
run: |
Lines changed: 41 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,41 @@
1+
name: PR commit message checks
2+
3+
on:
4+
pull_request:
5+
branches: [ '**' ]
6+
7+
concurrency:
8+
group: ${{ github.workflow }}-${{ github.ref }}
9+
cancel-in-progress: true
10+
# END OF COMMON SECTION
11+
12+
jobs:
13+
commit-messages:
14+
if: github.repository_owner == 'wolfssl'
15+
runs-on: ubuntu-24.04
16+
steps:
17+
- uses: actions/checkout@v4
18+
with:
19+
fetch-depth: 0
20+
21+
- name: Reject AI attribution trailers
22+
env:
23+
BASE_SHA: ${{ github.event.pull_request.base.sha }}
24+
HEAD_SHA: ${{ github.event.pull_request.head.sha }}
25+
run: |
26+
set -euo pipefail
27+
fail=0
28+
while IFS= read -r sha; do
29+
[ -z "$sha" ] && continue
30+
if git log -1 --format=%B "$sha" | git interpret-trailers --parse | \
31+
grep -iE '^(Co-authored-by|Signed-off-by):.*<?noreply@anthropic\.com>?' >/dev/null; then
32+
echo "::error::Commit $sha contains a Co-authored-by or Signed-off-by trailer for noreply@anthropic.com"
33+
git log -1 --format=' %h %s' "$sha"
34+
fail=1
35+
fi
36+
done < <(git rev-list "$BASE_SHA".."$HEAD_SHA")
37+
if [ "$fail" -ne 0 ]; then
38+
echo "One or more commits contain disallowed AI attribution trailers; please amend them out."
39+
exit 1
40+
fi
41+
echo "No disallowed AI attribution trailers found."

.github/workflows/puf.yml

Lines changed: 37 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,37 @@
1+
name: PUF Tests
2+
3+
# START OF COMMON SECTION
4+
on:
5+
push:
6+
branches: [ 'master', 'main', 'release/**' ]
7+
pull_request:
8+
branches: [ '*' ]
9+
10+
concurrency:
11+
group: ${{ github.workflow }}-${{ github.ref }}
12+
cancel-in-progress: true
13+
# END OF COMMON SECTION
14+
15+
jobs:
16+
puf_host_test:
17+
name: PUF host test
18+
if: github.repository_owner == 'wolfssl'
19+
runs-on: ubuntu-24.04
20+
timeout-minutes: 6
21+
steps:
22+
- uses: actions/checkout@v4
23+
name: Checkout wolfSSL
24+
25+
- name: Build and test PUF
26+
run: |
27+
./autogen.sh
28+
./configure --enable-puf --enable-puf-test
29+
make
30+
./wolfcrypt/test/testwolfcrypt
31+
32+
- name: Print errors
33+
if: ${{ failure() }}
34+
run: |
35+
if [ -f test-suite.log ] ; then
36+
cat test-suite.log
37+
fi

.github/workflows/se050-sim.yml

Lines changed: 11 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -12,15 +12,16 @@ concurrency:
1212
cancel-in-progress: true
1313
# END OF COMMON SECTION
1414

15-
# Build the SE050 software simulator (https://github.com/LinuxJedi/SE050Sim),
16-
# build wolfSSL against its NXP Plug&Trust SDK + simulator bridge, and run the
17-
# wolfCrypt SE050 test binary against the simulator TCP server.
15+
# Build the SE050 software simulator (https://github.com/wolfSSL/simulators,
16+
# SE050Sim/ subdirectory), build wolfSSL against its NXP Plug&Trust SDK +
17+
# simulator bridge, and run the wolfCrypt SE050 test binary against the
18+
# simulator TCP server.
1819
#
1920
# The simulator's own Dockerfile (Dockerfile.wolfcrypt) clones wolfSSL master.
2021
# We patch it to COPY the PR checkout instead so CI reflects the PR's source.
2122

2223
env:
23-
SE050SIM_REF: 8fda9212c306fbee0dcd66f2dd52b13f65f13e00
24+
SIMULATORS_REF: 745893640e21a15b7df8c70567c522953aba2f2c
2425

2526
jobs:
2627
se050_sim:
@@ -36,14 +37,14 @@ jobs:
3637

3738
- name: Clone SE050 simulator
3839
run: |
39-
git clone https://github.com/LinuxJedi/SE050Sim se050sim
40-
cd se050sim && git checkout "$SE050SIM_REF"
40+
git clone https://github.com/wolfSSL/simulators simulators
41+
cd simulators && git checkout "$SIMULATORS_REF"
4142
4243
- name: Stage PR wolfSSL into simulator build context
43-
run: mv wolfssl-src se050sim/wolfssl
44+
run: mv wolfssl-src simulators/SE050Sim/wolfssl
4445

4546
- name: Patch Dockerfile to use PR wolfSSL instead of upstream master
46-
working-directory: se050sim
47+
working-directory: simulators/SE050Sim
4748
run: |
4849
sed -i 's|^RUN git clone --depth 1 https://github.com/wolfSSL/wolfssl.git /app/wolfssl$|COPY wolfssl /app/wolfssl|' Dockerfile.wolfcrypt
4950
# Fail fast if the pattern drifted upstream -- better a clear error
@@ -56,8 +57,8 @@ jobs:
5657
- name: Build wolfCrypt-SE050 test image
5758
uses: docker/build-push-action@v5
5859
with:
59-
context: se050sim
60-
file: se050sim/Dockerfile.wolfcrypt
60+
context: simulators/SE050Sim
61+
file: simulators/SE050Sim/Dockerfile.wolfcrypt
6162
push: false
6263
load: true
6364
tags: wolfssl-se050-sim:ci

.wolfssl_known_macro_extras

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -652,6 +652,7 @@ WC_NO_VERBOSE_RNG
652652
WC_PKCS11_FIND_WITH_ID_ONLY
653653
WC_PKCS12_PBKDF_USING_MP_API
654654
WC_PROTECT_ENCRYPTED_MEM
655+
WC_PUF_SHA3
655656
WC_RNG_BANK_NO_DEFAULT_SUPPORT
656657
WC_RNG_BLOCKING
657658
WC_RSA_NONBLOCK
@@ -732,6 +733,7 @@ WOLFSSL_DILITHIUM_SIGN_SMALL_MEM_PRECALC
732733
WOLFSSL_DILITHIUM_SIGN_SMALL_MEM_PRECALC_A
733734
WOLFSSL_DILITHIUM_SMALL_MEM_POLY64
734735
WOLFSSL_DISABLE_EARLY_SANITY_CHECKS
736+
WOLFSSL_DRBG_SHA256
735737
WOLFSSL_DTLS_DISALLOW_FUTURE
736738
WOLFSSL_DTLS_RECORDS_CAN_SPAN_DATAGRAMS
737739
WOLFSSL_DTLS_RESEND_ONLY_TIMEOUT
@@ -829,6 +831,7 @@ WOLFSSL_NO_KCAPI_HMAC_SHA256
829831
WOLFSSL_NO_KCAPI_HMAC_SHA384
830832
WOLFSSL_NO_KCAPI_HMAC_SHA512
831833
WOLFSSL_NO_KCAPI_SHA224
834+
WOLFSSL_NO_KTRI_ORACLE_WARNING
832835
WOLFSSL_NO_OCSP_DATE_CHECK
833836
WOLFSSL_NO_OCSP_ISSUER_CHAIN_CHECK
834837
WOLFSSL_NO_OCSP_OPTIONAL_CERTS
@@ -1131,3 +1134,4 @@ ssize_t
11311134
sun
11321135
versal
11331136
wc_Tls13_HKDF_Expand_Label
1137+
WOLFSSL_NO_LMS_SHAKE256_256

CMakeLists.txt

Lines changed: 22 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1772,6 +1772,28 @@ endif()
17721772

17731773
# TODO: - XCHACHA
17741774

1775+
# SRAM PUF
1776+
add_option("WOLFSSL_PUF"
1777+
"Enable SRAM PUF support (default: disabled)"
1778+
"no" "yes;no")
1779+
1780+
if(WOLFSSL_PUF)
1781+
list(APPEND WOLFSSL_DEFINITIONS
1782+
"-DWOLFSSL_PUF"
1783+
"-DWOLFSSL_PUF_SRAM"
1784+
"-DHAVE_HKDF")
1785+
override_cache(WOLFSSL_HKDF "yes")
1786+
endif()
1787+
1788+
# PUF test mode (synthetic SRAM data injection)
1789+
add_option("WOLFSSL_PUF_TEST"
1790+
"Enable PUF test mode with synthetic data (default: disabled)"
1791+
"no" "yes;no")
1792+
1793+
if(WOLFSSL_PUF_TEST)
1794+
list(APPEND WOLFSSL_DEFINITIONS "-DWOLFSSL_PUF_TEST")
1795+
endif()
1796+
17751797
# Hash DRBG
17761798
add_option("WOLFSSL_HASH_DRBG"
17771799
"Enable Hash DRBG support (default: enabled)"

ChangeLog.md

Lines changed: 14 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,17 @@
1+
# wolfSSL Release (unreleased)
2+
3+
## Enhancements
4+
5+
* TLS 1.3: zero traffic key staging buffers in `SetKeysSide()` once a
6+
CryptoCB callback has imported the AES key into a Secure Element
7+
(`aes->devCtx != NULL`). Clears `keys->{client,server}_write_key`
8+
on the provisioned side(s) after cipher init succeeds. The static
9+
IV buffers (`keys->{client,server}_write_IV`,
10+
`keys->aead_{enc,dec}_imp_IV`) are intentionally left intact because
11+
`BuildTls13Nonce()` reads them on every AEAD record to construct the
12+
per-record nonce. Scoped to TLS 1.3, non-DTLS, non-QUIC; requires
13+
`WOLF_CRYPTO_CB` and `WOLF_CRYPTO_CB_AES_SETKEY`.
14+
115
# wolfSSL Release 5.9.1 (Apr. 8, 2026)
216

317
Release 5.9.1 has been developed according to wolfSSL's development and QA

IDE/WIN10/wolfssl-fips.vcxproj

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -318,6 +318,12 @@
318318
<ClCompile Include="..\..\wolfcrypt\src\wolfmath.c" />
319319
<ClCompile Include="..\..\wolfcrypt\src\wolfevent.c" />
320320
<ClCompile Include="..\..\wolfcrypt\src\pkcs12.c" />
321+
<ClCompile Include="..\..\wolfcrypt\src\dilithium.c" />
322+
<ClCompile Include="..\..\wolfcrypt\src\wc_lms.c" />
323+
<ClCompile Include="..\..\wolfcrypt\src\wc_lms_impl.c" />
324+
<ClCompile Include="..\..\wolfcrypt\src\wc_xmss.c" />
325+
<ClCompile Include="..\..\wolfcrypt\src\wc_xmss_impl.c" />
326+
<ClCompile Include="..\..\wolfcrypt\src\wc_slhdsa.c" />
321327
</ItemGroup>
322328
<ItemGroup>
323329
<CustomBuild Include="..\..\wolfcrypt\src\aes_asm.asm">

0 commit comments

Comments
 (0)