Skip to content

Commit 14e1d2e

Browse files
Merge branch 'master' into zd20527
2 parents 3a4472f + 92a4782 commit 14e1d2e

125 files changed

Lines changed: 8881 additions & 2074 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/docker-Espressif.yml

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -19,7 +19,9 @@ jobs:
1919
# This should be a safe limit for the tests to run.
2020
timeout-minutes: 12
2121
container:
22-
image: espressif/idf:latest
22+
# The latest stable release is v5.5
23+
image: espressif/idf:release-v5.5
24+
# image: espressif/idf:latest # The "latest" has breaking changes for ESP-IDF V6
2325
steps:
2426
- uses: actions/checkout@v4
2527
- name: Initialize Espressif IDE and build examples

.github/workflows/os-check.yml

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -60,6 +60,9 @@ jobs:
6060
'--disable-sys-ca-certs',
6161
'--enable-all CPPFLAGS=-DWOLFSSL_DEBUG_CERTS ',
6262
'--enable-all CFLAGS="-DWOLFSSL_CHECK_MEM_ZERO"',
63+
'--enable-coding=no',
64+
'--enable-dtls --enable-dtls13 --enable-ocspstapling --enable-ocspstapling2
65+
--enable-cert-setup-cb --enable-sessioncerts',
6366
]
6467
name: make check
6568
if: github.repository_owner == 'wolfssl'

.github/workflows/threadx.yml

Lines changed: 57 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,57 @@
1+
name: ThreadXBuild Test
2+
3+
on:
4+
push:
5+
branches: [ 'master', 'main', 'release/**' ]
6+
pull_request:
7+
branches: [ '*' ]
8+
9+
jobs:
10+
build:
11+
12+
runs-on: ubuntu-22.04
13+
timeout-minutes: 10
14+
15+
steps:
16+
- name: Cache NetXDuo bundle
17+
id: cache-netxduo
18+
uses: actions/cache@v3
19+
with:
20+
path: ./v6.4.3_rel.tar.gz
21+
key: netxduo-bundle-v6.4.3_rel
22+
23+
- name: Download NetXDuo bundle if not cached
24+
if: steps.cache-netxduo.outputs.cache-hit != 'true'
25+
run: |
26+
wget https://github.com/eclipse-threadx/netxduo/archive/refs/tags/v6.4.3_rel.tar.gz
27+
28+
- name: Extract NetXDuo bundle
29+
run: |
30+
mkdir -p netxduo_src
31+
tar -xzf v6.4.3_rel.tar.gz -C netxduo_src --strip-components=1
32+
33+
- name: Install NetXDuo Dependencies
34+
working-directory: ./netxduo_src
35+
run: |
36+
./scripts/install.sh
37+
38+
- name: Configure NetX with DNS Client Support
39+
working-directory: ./netxduo_src
40+
run: |
41+
cp addons/dns/nxd_dns.h ./common/inc/
42+
cp addons/dns/nxd_dns.c ./common/src/
43+
44+
- name: Build NetXDuo with DNS Support
45+
working-directory: ./netxduo_src
46+
run: |
47+
rm -rf test/cmake/threadx
48+
rm -rf test/cmake/filex
49+
./scripts/build_nxd64.sh
50+
51+
- name: Build wolfSSL
52+
uses: wolfSSL/actions-build-autotools-project@v1
53+
with:
54+
path: wolfssl
55+
configure: --enable-enckeys --disable-examples --disable-benchmark --disable-crypttests CPPFLAGS="-DTHREADX -DHAVE_NETX -DWOLFSSL_USER_IO -I${{ github.workspace }}/netxduo_src/common/inc -I${{ github.workspace }}/netxduo_src/ports/linux/gnu/inc -I${{ github.workspace }}/netxduo_src/test/cmake/netxduo64/build/libs/inc" LDFLAGS="-L${{ github.workspace }}/netxduo_src/test/cmake/netxduo64/build/default_build_coverage/netxduo -L${{ github.workspace }}/netxduo_src/test/cmake/netxduo64/build/libs/threadx" LIBS="-lnetxduo -lthreadx"
56+
install: false
57+

.wolfssl_known_macro_extras

Lines changed: 4 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -420,6 +420,7 @@ NO_STDIO_FGETS_REMAP
420420
NO_TKERNEL_MEM_POOL
421421
NO_TLSX_PSKKEM_PLAIN_ANNOUNCE
422422
NO_VERIFY_OID
423+
NO_WC_DHGENERATEPUBLIC
423424
NO_WC_SSIZE_TYPE
424425
NO_WOLFSSL_ALLOC_ALIGN
425426
NO_WOLFSSL_AUTOSAR_CRYIF
@@ -600,6 +601,7 @@ WC_DILITHIUM_CACHE_PUB_VECTORS
600601
WC_DILITHIUM_FIXED_ARRAY
601602
WC_DISABLE_RADIX_ZERO_PAD
602603
WC_ECC_NONBLOCK_ONLY
604+
WC_FLAG_DONT_USE_AESNI
603605
WC_KDF_NIST_SP_800_56C
604606
WC_LMS_FULL_HASH
605607
WC_NO_RNG_SIMPLE
@@ -617,7 +619,7 @@ WC_SHA512
617619
WC_SKIP_INCLUDED_C_FILES
618620
WC_SSIZE_TYPE
619621
WC_STRICT_SIG
620-
WC_WANT_FLAG_DONT_USE_AESNI
622+
WC_WANT_FLAG_DONT_USE_VECTOR_OPS
621623
WC_XMSS_FULL_HASH
622624
WIFIESPAT
623625
WIFI_101
@@ -706,6 +708,7 @@ WOLFSSL_ECDHX_SHARED_NOT_ZERO
706708
WOLFSSL_ECDSA_MATCH_HASH
707709
WOLFSSL_ECDSA_SET_K_ONE_LOOP
708710
WOLFSSL_EC_POINT_CMP_JACOBIAN
711+
WOLFSSL_ED448_NO_LARGE_CODE
709712
WOLFSSL_EDDSA_CHECK_PRIV_ON_SIGN
710713
WOLFSSL_EMNET
711714
WOLFSSL_ESPWROOM32
@@ -780,7 +783,6 @@ WOLFSSL_NO_CT_MAX_MIN
780783
WOLFSSL_NO_DECODE_EXTRA
781784
WOLFSSL_NO_DER_TO_PEM
782785
WOLFSSL_NO_DH186
783-
WOLFSSL_NO_DH_GEN_PUB
784786
WOLFSSL_NO_DTLS_SIZE_CHECK
785787
WOLFSSL_NO_ETM_ALERT
786788
WOLFSSL_NO_FENCE

CMakeLists.txt

Lines changed: 13 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -66,6 +66,9 @@ set(WOLFSSL_DEFINITIONS)
6666
set(WOLFSSL_LINK_LIBS)
6767
set(WOLFSSL_INCLUDE_DIRS)
6868

69+
# Initialize pkg-config private variables
70+
set(PC_LIBS_PRIVATE "")
71+
6972
set(CMAKE_MODULE_PATH ${CMAKE_MODULE_PATH} "${CMAKE_CURRENT_SOURCE_DIR}/cmake/modules/")
7073
include(${CMAKE_CURRENT_SOURCE_DIR}/cmake/functions.cmake)
7174

@@ -2969,6 +2972,16 @@ if(WOLFSSL_INSTALL)
29692972
endif()
29702973
endif()
29712974

2975+
# Add required frameworks for static linking on Apple platforms
2976+
if(APPLE AND NOT BUILD_SHARED_LIBS)
2977+
if(WOLFSSL_SYS_CA_CERTS)
2978+
list(APPEND PC_LIBS_PRIVATE "-framework CoreFoundation" "-framework Security")
2979+
endif()
2980+
endif()
2981+
2982+
# Convert lists to space-separated strings for pkg-config
2983+
string(JOIN " " PC_LIBS_PRIVATE ${PC_LIBS_PRIVATE})
2984+
29722985
configure_file(support/wolfssl.pc.in ${CMAKE_CURRENT_BINARY_DIR}/support/wolfssl.pc @ONLY)
29732986
install(FILES ${CMAKE_CURRENT_BINARY_DIR}/support/wolfssl.pc
29742987
DESTINATION ${CMAKE_INSTALL_LIBDIR}/pkgconfig)

IDE/GCC-ARM/Header/user_settings.h

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -521,7 +521,7 @@ extern unsigned int my_rng_seed_gen(void);
521521
#define USE_WOLF_STRTOK
522522
#define XSTRTOK(s1,d,ptr) wc_strtok((s1),(d),(ptr))
523523

524-
#define XSTRNSTR(s1,s2,n) mystrnstr((s1),(s2),(n))
524+
#define XSTRNSTR(s1,s2,n) wolfSSL_strnstr((s1),(s2),(n))
525525

526526
#define XMEMCPY(d,s,l) memcpy((d),(s),(l))
527527
#define XMEMSET(b,c,l) memset((b),(c),(l))

IDE/STM32Cube/README.md

Lines changed: 4 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -100,6 +100,7 @@ The section for "Hardware platform" may need to be adjusted depending on your pr
100100
* To enable STM32U5 support define `WOLFSSL_STM32U5`.
101101
* To enable STM32H5 support define `WOLFSSL_STM32H5`.
102102
* To enable STM32MP13 support define `WOLFSSL_STM32MP13`.
103+
* To enable STM32N6 support define `WOLFSSL_STM32N6`.
103104

104105
To use the STM32 Cube HAL support make sure `WOLFSSL_STM32_CUBEMX` is defined.
105106

@@ -195,7 +196,9 @@ Note: The Benchmark example uses float. To enable go to "Project Properties" ->
195196
196197
## STM32 Printf
197198
198-
In main.c make the following changes:
199+
Generation of code for a NUCLEO board provides a BSP option for generating printf support for the virtual com port. To use this set `#define HAL_CONSOLE_UART hcom_uart`.
200+
201+
If setting the printf support manually make the following changes in `main.c`.
199202
200203
This section needs to go below the `UART_HandleTypeDef` line, otherwise `wolfssl/wolfcrypt/settings.h` will error.
201204

0 commit comments

Comments
 (0)