Merge pull request #9765 from night1rider/zephyr-4_3_0-posix-fix

Add Zephyr 4.1+ build compatibility for wolfssl_tls_sock sample.
This commit is contained in:
Daniel Pouzzner
2026-03-10 22:28:43 -05:00
committed by GitHub
32 changed files with 267 additions and 61 deletions
+3
View File
@@ -56,6 +56,7 @@ CONFIG_ARCH_TEGRA
CONFIG_ARM
CONFIG_ARM64
CONFIG_BOARD_NATIVE_POSIX
CONFIG_BOARD_NATIVE_SIM
CONFIG_COMPILER_OPTIMIZATION_DEFAULT
CONFIG_COMPILER_OPTIMIZATION_NONE
CONFIG_COMPILER_OPTIMIZATION_PERF
@@ -564,6 +565,7 @@ STSAFE_HOST_KEY_MAC
STSAFE_I2C_BUS
STSE_CONF_ECC_BRAINPOOL_P_256
STSE_CONF_ECC_BRAINPOOL_P_384
SYS_CLOCK_REALTIME
TASK_EXTRA_STACK_SIZE
TCP_NODELAY
TFM_ALREADY_SET
@@ -1100,6 +1102,7 @@ __cplusplus
__ghc__
__ghs__
__has_attribute
__has_include
__hpux__
__i386
__i386__
+5 -1
View File
@@ -16096,7 +16096,11 @@ void bench_sphincsKeySign(byte level, byte optim)
int64_t t;
(void)reset;
#if defined(CONFIG_ARCH_POSIX)
k_cpu_idle();
#if defined(CONFIG_BOARD_NATIVE_SIM)
k_msleep(1);
#else
k_cpu_idle();
#endif
#endif
t = k_uptime_get(); /* returns current uptime in milliseconds */
return (double)(t / 1000);
+16 -8
View File
@@ -3447,7 +3447,17 @@ int wc_GenerateSeed(OS_Seed* os, byte* output, word32 sz)
#elif defined(WOLFSSL_ZEPHYR)
#include <version.h>
#ifdef __has_include
#if __has_include(<zephyr/version.h>)
#include <zephyr/version.h>
#else
#include <version.h>
#endif
#else
#include <version.h>
#endif
#include <sys/types.h>
#if KERNEL_VERSION_NUMBER >= 0x30500
#include <zephyr/random/random.h>
@@ -3459,14 +3469,12 @@ int wc_GenerateSeed(OS_Seed* os, byte* output, word32 sz)
#endif
#endif
#ifndef _POSIX_C_SOURCE
#if KERNEL_VERSION_NUMBER >= 0x30100
#include <zephyr/posix/time.h>
#else
#include <posix/time.h>
#endif
#else
#if KERNEL_VERSION_NUMBER >= 0x40300
#include <time.h>
#elif KERNEL_VERSION_NUMBER >= 0x30100
#include <zephyr/posix/time.h>
#else
#include <posix/time.h>
#endif
int wc_GenerateSeed(OS_Seed* os, byte* output, word32 sz)
+12 -2
View File
@@ -188,7 +188,15 @@
#include <pthread.h>
#define SOCKET_T int
#elif defined(WOLFSSL_ZEPHYR)
#include <version.h>
#ifdef __has_include
#if __has_include(<zephyr/version.h>)
#include <zephyr/version.h>
#else
#include <version.h>
#endif
#else
#include <version.h>
#endif
#include <string.h>
#include <sys/types.h>
#if KERNEL_VERSION_NUMBER >= 0x30100
@@ -209,9 +217,10 @@
#endif
#endif
#define SOCKET_T int
#define SOL_SOCKET 1
#define WOLFSSL_USE_GETADDRINFO
#if !defined(CONFIG_POSIX_API)
#define SOL_SOCKET 1
static unsigned long inet_addr(const char *cp)
{
unsigned int a[4]; unsigned long ret;
@@ -227,6 +236,7 @@
ret = ((a[3]<<24) + (a[2]<<16) + (a[1]<<8) + a[0]) ;
return(ret) ;
}
#endif
#elif defined(NETOS)
#include <string.h>
#include <sys/types.h>
+38 -1
View File
@@ -2621,7 +2621,15 @@ extern void uITRON4_free(void *p) ;
} /* extern "C" */
#endif
#include <version.h>
#ifdef __has_include
#if __has_include(<zephyr/version.h>)
#include <zephyr/version.h>
#else
#include <version.h>
#endif
#else
#include <version.h>
#endif
#if KERNEL_VERSION_NUMBER >= 0x30100
#include <zephyr/kernel.h>
#include <zephyr/sys/printk.h>
@@ -2649,9 +2657,38 @@ extern void uITRON4_free(void *p) ;
void *z_realloc(void *ptr, size_t size);
#define realloc z_realloc
#if KERNEL_VERSION_NUMBER >= 0x40100
/* Zephyr >= 4.1 removed CONFIG_NET_SOCKETS_POSIX_NAMES and the
* corresponding macro block in <zephyr/net/socket.h>.
* Define our own compile-time remapping to zsock_* so that wolfSSL
* always calls Zephyr's network stack directly, avoiding host-libc
* symbol conflicts on native_sim. */
#define socket zsock_socket
#define bind zsock_bind
#define connect zsock_connect
#define listen zsock_listen
#define accept zsock_accept
#define send zsock_send
#define recv zsock_recv
#define sendto zsock_sendto
#define recvfrom zsock_recvfrom
#define setsockopt zsock_setsockopt
#define getsockopt zsock_getsockopt
#define shutdown zsock_shutdown
#define getpeername zsock_getpeername
#define getsockname zsock_getsockname
/* Note: close, poll, inet_pton, inet_ntop are NOT remapped here.
* They are general POSIX functions still declared in Zephyr's POSIX
* headers; redefining them conflicts with __syscall declarations in
* <zephyr/net/socket.h>. close is handled via CloseSocket in wolfio.h,
* inet_pton/inet_ntop via XINET_PTON/XINET_NTOP in wolfio.h. */
#else
/* Zephyr < 4.1: define CONFIG_NET_SOCKETS_POSIX_NAMES so that
* <net/socket.h> provides the POSIX name remapping macros. */
#if !defined(CONFIG_NET_SOCKETS_POSIX_NAMES) && !defined(CONFIG_POSIX_API)
#define CONFIG_NET_SOCKETS_POSIX_NAMES
#endif
#endif
#endif /* WOLFSSL_ZEPHYR */
#ifdef WOLFSSL_IMX6
+33 -13
View File
@@ -301,19 +301,34 @@
} /* extern "C" */
#endif
#include <version.h>
#ifdef __has_include
#if __has_include(<zephyr/version.h>)
#include <zephyr/version.h>
#else
#include <version.h>
#endif
#else
#include <version.h>
#endif
/* Include sys/types.h early so host libc sets __timer_t_defined
* before Zephyr's posix_types.h can define a conflicting timer_t */
#include <sys/types.h>
#ifndef SINGLE_THREADED
#if !defined(CONFIG_PTHREAD_IPC) && !defined(CONFIG_POSIX_THREADS)
#error "Threading needs CONFIG_PTHREAD_IPC / CONFIG_POSIX_THREADS"
#endif
#if KERNEL_VERSION_NUMBER >= 0x30100
#include <zephyr/kernel.h>
#include <zephyr/posix/posix_types.h>
#include <zephyr/posix/pthread.h>
#ifndef CONFIG_ARCH_POSIX
#include <zephyr/posix/posix_types.h>
#include <zephyr/posix/pthread.h>
#endif
#else
#include <kernel.h>
#include <posix/posix_types.h>
#include <posix/pthread.h>
#ifndef CONFIG_ARCH_POSIX
#include <posix/posix_types.h>
#include <posix/pthread.h>
#endif
#endif
#endif
@@ -1505,15 +1520,20 @@ WOLFSSL_ABI WOLFSSL_API int wolfCrypt_Cleanup(void);
} /* extern "C" */
#endif
#include <version.h>
#ifndef _POSIX_C_SOURCE
#if KERNEL_VERSION_NUMBER >= 0x30100
#include <zephyr/posix/time.h>
#else
#include <posix/time.h>
#endif
#else
#if KERNEL_VERSION_NUMBER >= 0x40300
#include <time.h>
#elif KERNEL_VERSION_NUMBER >= 0x30100
#include <zephyr/posix/time.h>
#else
#include <posix/time.h>
#endif
#ifndef CLOCK_REALTIME
#ifdef SYS_CLOCK_REALTIME
#define CLOCK_REALTIME SYS_CLOCK_REALTIME
#define clock_gettime sys_clock_gettime
#define clock_settime sys_clock_settime
#endif
#endif
#if defined(CONFIG_RTC)
+14 -1
View File
@@ -180,7 +180,15 @@
} /* extern "C" */
#endif
#include <version.h>
#ifdef __has_include
#if __has_include(<zephyr/version.h>)
#include <zephyr/version.h>
#else
#include <version.h>
#endif
#else
#include <version.h>
#endif
#if KERNEL_VERSION_NUMBER >= 0x30100
#include <zephyr/net/socket.h>
#ifdef CONFIG_POSIX_API
@@ -623,6 +631,11 @@ WOLFSSL_API int wolfIO_RecvFrom(SOCKET_T sd, WOLFSSL_BIO_ADDR *addr, char *buf,
#define CloseSocket(s) closesocket(s)
#endif
#define StartTCP() WC_DO_NOTHING
#elif defined(WOLFSSL_ZEPHYR) && KERNEL_VERSION_NUMBER >= 0x40100
#ifndef CloseSocket
#define CloseSocket(s) zsock_close(s)
#endif
#define StartTCP() WC_DO_NOTHING
#else
#ifndef CloseSocket
#define CloseSocket(s) close(s)
+9
View File
@@ -186,6 +186,15 @@ if(CONFIG_WOLFSSL)
target_compile_definitions(wolfSSL INTERFACE WOLFSSL_ZEPHYR)
target_compile_definitions(wolfSSL INTERFACE WOLFSSL_USER_SETTINGS)
if(NOT CONFIG_WOLFSSL_NO_HAVE_MIN_MAX AND
(KERNEL_VERSION_MAJOR GREATER_EQUAL 5 OR
(KERNEL_VERSION_MAJOR EQUAL 4 AND
KERNEL_VERSION_MINOR GREATER_EQUAL 3)))
target_compile_definitions(wolfSSL INTERFACE
WOLFSSL_HAVE_MIN
WOLFSSL_HAVE_MAX)
endif()
if(CONFIG_WOLFSSL_DEBUG)
target_compile_definitions(wolfSSL INTERFACE DEBUG_WOLFSSL)
zephyr_library_compile_options(-g3 -O0)
+7
View File
@@ -112,6 +112,13 @@ config WOLFCRYPT_INTELASM
help
wolfCrypt Intel Aassembly support (AVX/AVX2/AESNI)
config WOLFSSL_NO_HAVE_MIN_MAX
bool "Force wolfSSL to use its own min/max"
help
Disable this if Zephyr min()/max() macros cause
issues. By default wolfSSL defers to Zephyr's
min/max on >= 4.3.
config WOLFSSL_DEBUG
bool "wolfSSL debug activation"
depends on WOLFSSL_BUILTIN
+12
View File
@@ -13,31 +13,43 @@ EXTRA_DIST+= zephyr/README.md
EXTRA_DIST+= zephyr/samples/wolfssl_benchmark/
EXTRA_DIST+= zephyr/samples/wolfssl_benchmark/CMakeLists.txt
EXTRA_DIST+= zephyr/samples/wolfssl_benchmark/README
EXTRA_DIST+= zephyr/samples/wolfssl_benchmark/boards/native_sim.conf
EXTRA_DIST+= zephyr/samples/wolfssl_benchmark/boards/nrf5340dk_nrf5340_cpuapp.conf
EXTRA_DIST+= zephyr/samples/wolfssl_benchmark/boards/nrf5340dk_nrf5340_cpuapp_ns.conf
EXTRA_DIST+= zephyr/samples/wolfssl_benchmark/install_test.sh
EXTRA_DIST+= zephyr/samples/wolfssl_benchmark/prj.conf
EXTRA_DIST+= zephyr/samples/wolfssl_benchmark/sample.yaml
EXTRA_DIST+= zephyr/samples/wolfssl_benchmark/zephyr_legacy.conf
EXTRA_DIST+= zephyr/samples/wolfssl_benchmark/zephyr_v4.1.conf
EXTRA_DIST+= zephyr/samples/wolfssl_test/CMakeLists.txt
EXTRA_DIST+= zephyr/samples/wolfssl_test/README
EXTRA_DIST+= zephyr/samples/wolfssl_test/boards/native_sim.conf
EXTRA_DIST+= zephyr/samples/wolfssl_test/boards/nrf5340dk_nrf5340_cpuapp.conf
EXTRA_DIST+= zephyr/samples/wolfssl_test/boards/nrf5340dk_nrf5340_cpuapp_ns.conf
EXTRA_DIST+= zephyr/samples/wolfssl_test/install_test.sh
EXTRA_DIST+= zephyr/samples/wolfssl_test/prj.conf
EXTRA_DIST+= zephyr/samples/wolfssl_test/sample.yaml
EXTRA_DIST+= zephyr/samples/wolfssl_test/zephyr_legacy.conf
EXTRA_DIST+= zephyr/samples/wolfssl_test/zephyr_v4.1.conf
EXTRA_DIST+= zephyr/samples/wolfssl_tls_sock/CMakeLists.txt
EXTRA_DIST+= zephyr/samples/wolfssl_tls_sock/README
EXTRA_DIST+= zephyr/samples/wolfssl_tls_sock/boards/native_sim.conf
EXTRA_DIST+= zephyr/samples/wolfssl_tls_sock/install_sample.sh
EXTRA_DIST+= zephyr/samples/wolfssl_tls_sock/prj.conf
EXTRA_DIST+= zephyr/samples/wolfssl_tls_sock/sample.yaml
EXTRA_DIST+= zephyr/samples/wolfssl_tls_sock/src
EXTRA_DIST+= zephyr/samples/wolfssl_tls_sock/zephyr_legacy.conf
EXTRA_DIST+= zephyr/samples/wolfssl_tls_sock/zephyr_v4.1.conf
EXTRA_DIST+= zephyr/samples/wolfssl_tls_sock/src/tls_sock.c
EXTRA_DIST+= zephyr/samples/wolfssl_tls_thread/CMakeLists.txt
EXTRA_DIST+= zephyr/samples/wolfssl_tls_thread/README
EXTRA_DIST+= zephyr/samples/wolfssl_tls_thread/boards/native_sim.conf
EXTRA_DIST+= zephyr/samples/wolfssl_tls_thread/boards/nrf5340dk_nrf5340_cpuapp.conf
EXTRA_DIST+= zephyr/samples/wolfssl_tls_thread/boards/nrf5340dk_nrf5340_cpuapp_ns.conf
EXTRA_DIST+= zephyr/samples/wolfssl_tls_thread/install_sample.sh
EXTRA_DIST+= zephyr/samples/wolfssl_tls_thread/prj.conf
EXTRA_DIST+= zephyr/samples/wolfssl_tls_thread/sample.yaml
EXTRA_DIST+= zephyr/samples/wolfssl_tls_thread/src
EXTRA_DIST+= zephyr/samples/wolfssl_tls_thread/zephyr_legacy.conf
EXTRA_DIST+= zephyr/samples/wolfssl_tls_thread/zephyr_v4.1.conf
EXTRA_DIST+= zephyr/samples/wolfssl_tls_thread/src/tls_threaded.c
@@ -1,4 +1,24 @@
cmake_minimum_required(VERSION 3.13.1)
# Select version-specific Kconfig fragment before loading Zephyr
if(EXISTS $ENV{ZEPHYR_BASE}/VERSION)
file(READ $ENV{ZEPHYR_BASE}/VERSION zephyr_version_file)
string(REGEX MATCH "VERSION_MAJOR = ([0-9]+)" _ ${zephyr_version_file})
set(ZEPHYR_VER_MAJOR ${CMAKE_MATCH_1})
string(REGEX MATCH "VERSION_MINOR = ([0-9]+)" _ ${zephyr_version_file})
set(ZEPHYR_VER_MINOR ${CMAKE_MATCH_1})
endif()
if(ZEPHYR_VER_MAJOR GREATER_EQUAL 4 OR
(ZEPHYR_VER_MAJOR EQUAL 3 AND
ZEPHYR_VER_MINOR GREATER 5))
set(OVERLAY_CONFIG
${CMAKE_CURRENT_SOURCE_DIR}/zephyr_v4.1.conf)
else()
set(OVERLAY_CONFIG
${CMAKE_CURRENT_SOURCE_DIR}/zephyr_legacy.conf)
endif()
find_package(Zephyr REQUIRED HINTS $ENV{ZEPHYR_BASE})
project(wolfssl_benchmark)
@@ -0,0 +1,2 @@
# native_sim needs a larger malloc arena for thread stack allocation
CONFIG_COMMON_LIBC_MALLOC_ARENA_SIZE=131072
@@ -2,12 +2,6 @@
CONFIG_MAIN_STACK_SIZE=32768
CONFIG_COMMON_LIBC_MALLOC_ARENA_SIZE=8192
# Pthreads
CONFIG_PTHREAD_IPC=y
# Clock for time()
CONFIG_POSIX_CLOCK=y
# TLS configuration
CONFIG_WOLFSSL=y
CONFIG_WOLFSSL_BUILTIN=y
@@ -0,0 +1,3 @@
# Zephyr < 4.1 POSIX options
CONFIG_PTHREAD_IPC=y
CONFIG_POSIX_CLOCK=y
@@ -0,0 +1,2 @@
# Zephyr >= 4.1 POSIX options
CONFIG_POSIX_API=y
@@ -1,4 +1,24 @@
cmake_minimum_required(VERSION 3.13.1)
# Select version-specific Kconfig fragment before loading Zephyr
if(EXISTS $ENV{ZEPHYR_BASE}/VERSION)
file(READ $ENV{ZEPHYR_BASE}/VERSION zephyr_version_file)
string(REGEX MATCH "VERSION_MAJOR = ([0-9]+)" _ ${zephyr_version_file})
set(ZEPHYR_VER_MAJOR ${CMAKE_MATCH_1})
string(REGEX MATCH "VERSION_MINOR = ([0-9]+)" _ ${zephyr_version_file})
set(ZEPHYR_VER_MINOR ${CMAKE_MATCH_1})
endif()
if(ZEPHYR_VER_MAJOR GREATER_EQUAL 4 OR
(ZEPHYR_VER_MAJOR EQUAL 3 AND
ZEPHYR_VER_MINOR GREATER 5))
set(OVERLAY_CONFIG
${CMAKE_CURRENT_SOURCE_DIR}/zephyr_v4.1.conf)
else()
set(OVERLAY_CONFIG
${CMAKE_CURRENT_SOURCE_DIR}/zephyr_legacy.conf)
endif()
find_package(Zephyr REQUIRED HINTS $ENV{ZEPHYR_BASE})
project(wolfssl_test)
@@ -0,0 +1,2 @@
# native_sim needs a larger malloc arena for thread stack allocation
CONFIG_COMMON_LIBC_MALLOC_ARENA_SIZE=131072
@@ -2,12 +2,6 @@
CONFIG_MAIN_STACK_SIZE=655360
#CONFIG_COMMON_LIBC_MALLOC_ARENA_SIZE=65536
# Pthreads
CONFIG_PTHREAD_IPC=y
# Clock for time()
CONFIG_POSIX_CLOCK=y
# TLS configuration
CONFIG_WOLFSSL_SETTINGS_FILE="user_settings-no-malloc.h"
CONFIG_WOLFSSL=y
-6
View File
@@ -2,12 +2,6 @@
CONFIG_MAIN_STACK_SIZE=32768
CONFIG_COMMON_LIBC_MALLOC_ARENA_SIZE=16384
# Pthreads
CONFIG_PTHREAD_IPC=y
# Clock for time()
CONFIG_POSIX_CLOCK=y
# TLS configuration
CONFIG_WOLFSSL=y
CONFIG_WOLFSSL_BUILTIN=y
@@ -0,0 +1,3 @@
# Zephyr < 4.1 POSIX options
CONFIG_PTHREAD_IPC=y
CONFIG_POSIX_CLOCK=y
@@ -0,0 +1,2 @@
# Zephyr >= 4.1 POSIX options
CONFIG_POSIX_API=y
@@ -1,4 +1,24 @@
cmake_minimum_required(VERSION 3.13.1)
# Select version-specific Kconfig fragment before loading Zephyr
if(EXISTS $ENV{ZEPHYR_BASE}/VERSION)
file(READ $ENV{ZEPHYR_BASE}/VERSION zephyr_version_file)
string(REGEX MATCH "VERSION_MAJOR = ([0-9]+)" _ ${zephyr_version_file})
set(ZEPHYR_VER_MAJOR ${CMAKE_MATCH_1})
string(REGEX MATCH "VERSION_MINOR = ([0-9]+)" _ ${zephyr_version_file})
set(ZEPHYR_VER_MINOR ${CMAKE_MATCH_1})
endif()
if(ZEPHYR_VER_MAJOR GREATER_EQUAL 4 OR
(ZEPHYR_VER_MAJOR EQUAL 3 AND
ZEPHYR_VER_MINOR GREATER 5))
set(OVERLAY_CONFIG
${CMAKE_CURRENT_SOURCE_DIR}/zephyr_v4.1.conf)
else()
set(OVERLAY_CONFIG
${CMAKE_CURRENT_SOURCE_DIR}/zephyr_legacy.conf)
endif()
include($ENV{ZEPHYR_BASE}/cmake/app/boilerplate.cmake NO_POLICY_SCOPE)
project(wolfssl_tls_sock)
@@ -0,0 +1,2 @@
# native_sim needs a larger malloc arena for thread stack allocation
CONFIG_COMMON_LIBC_MALLOC_ARENA_SIZE=131072
-10
View File
@@ -4,22 +4,12 @@ CONFIG_ENTROPY_GENERATOR=y
CONFIG_INIT_STACKS=y
CONFIG_COMMON_LIBC_MALLOC_ARENA_SIZE=8192
# General config
CONFIG_NEWLIB_LIBC=y
# Pthreads
CONFIG_PTHREAD_IPC=y
# Clock for time()
CONFIG_POSIX_CLOCK=y
# Networking config
CONFIG_NETWORKING=y
CONFIG_NET_IPV4=y
CONFIG_NET_IPV6=n
CONFIG_NET_TCP=y
CONFIG_NET_SOCKETS=y
CONFIG_NET_SOCKETS_POSIX_NAMES=y
CONFIG_NET_TEST=y
CONFIG_NET_LOOPBACK=y
@@ -35,6 +35,8 @@
#define STATIC_MEM_SIZE (256*1024)
#define MAX_SEND_SIZE 256
K_SEM_DEFINE(server_ready, 0, 1);
#ifdef WOLFSSL_STATIC_MEMORY
static WOLFSSL_HEAP_HINT* HEAP_HINT_SERVER;
static WOLFSSL_HEAP_HINT* HEAP_HINT_CLIENT;
@@ -323,6 +325,7 @@ int wolfssl_server_accept_tcp(WOLFSSL* ssl, SOCKET_T* fd, SOCKET_T* acceptfd)
*fd = sockfd;
printf("Server Listen\n");
listen(sockfd, 5);
k_sem_give(&server_ready);
if (WOLFSSL_SOCKET_IS_INVALID(sockfd))
ret = -1;
}
@@ -512,7 +515,7 @@ int main()
return -1;
}
k_sleep(Z_TIMEOUT_TICKS(100));
k_sem_take(&server_ready, K_FOREVER);
client_thread();
/* Join is not working in qemu when the thread is still active. Wait for it
* to shut down to join it. */
@@ -0,0 +1,5 @@
# Zephyr < 4.1 POSIX and libc options
CONFIG_NEWLIB_LIBC=y
CONFIG_PTHREAD_IPC=y
CONFIG_POSIX_CLOCK=y
CONFIG_NET_SOCKETS_POSIX_NAMES=y
@@ -0,0 +1,6 @@
# Zephyr >= 4.1 POSIX and libc options
CONFIG_NEWLIB_LIBC=y
CONFIG_POSIX_API=y
# NET_LOOPBACK depends on NET_DRIVERS in Zephyr >= 4.1
CONFIG_NET_DRIVERS=y
@@ -1,4 +1,24 @@
cmake_minimum_required(VERSION 3.13.1)
# Select version-specific Kconfig fragment before loading Zephyr
if(EXISTS $ENV{ZEPHYR_BASE}/VERSION)
file(READ $ENV{ZEPHYR_BASE}/VERSION zephyr_version_file)
string(REGEX MATCH "VERSION_MAJOR = ([0-9]+)" _ ${zephyr_version_file})
set(ZEPHYR_VER_MAJOR ${CMAKE_MATCH_1})
string(REGEX MATCH "VERSION_MINOR = ([0-9]+)" _ ${zephyr_version_file})
set(ZEPHYR_VER_MINOR ${CMAKE_MATCH_1})
endif()
if(ZEPHYR_VER_MAJOR GREATER_EQUAL 4 OR
(ZEPHYR_VER_MAJOR EQUAL 3 AND
ZEPHYR_VER_MINOR GREATER 5))
set(OVERLAY_CONFIG
${CMAKE_CURRENT_SOURCE_DIR}/zephyr_v4.1.conf)
else()
set(OVERLAY_CONFIG
${CMAKE_CURRENT_SOURCE_DIR}/zephyr_legacy.conf)
endif()
find_package(Zephyr REQUIRED HINTS $ENV{ZEPHYR_BASE})
project(wolfssl_tls_threaded)
@@ -0,0 +1,2 @@
# native_sim needs a larger malloc arena for thread stack allocation
CONFIG_COMMON_LIBC_MALLOC_ARENA_SIZE=131072
@@ -5,12 +5,6 @@ CONFIG_TEST_RANDOM_GENERATOR=y
CONFIG_INIT_STACKS=y
CONFIG_COMMON_LIBC_MALLOC_ARENA_SIZE=131072
# Pthreads
CONFIG_PTHREAD_IPC=y
# Clock for time()
CONFIG_POSIX_CLOCK=y
# Networking
CONFIG_NETWORKING=y
CONFIG_NET_TEST=y
@@ -0,0 +1,3 @@
# Zephyr < 4.1 POSIX options
CONFIG_PTHREAD_IPC=y
CONFIG_POSIX_CLOCK=y
@@ -0,0 +1,2 @@
# Zephyr >= 4.1 POSIX options
CONFIG_POSIX_API=y