From 53d195022ff6519621da779f6a958d7b4d84f0da Mon Sep 17 00:00:00 2001 From: Andy Green Date: Wed, 10 Nov 2021 16:14:26 +0000 Subject: [PATCH] cmake: Enable WITH_MINIMAL_EXAMPLES by default Although many of the examples must be run from the example directory as cwd, everyone getting started probably wants to try the examples, cmake knows how to do it, so let's enable it by default. --- .sai.json | 2 +- CMakeLists-implied-options.txt | 4 ++++ CMakeLists.txt | 4 ++++ cmake/lws_config.h.in | 2 ++ lib/plat/unix/unix-init.c | 2 +- lib/plat/windows/windows-sockets.c | 2 +- lib/tls/CMakeLists.txt | 2 +- .../api-tests/api-test-lejp/main.c | 2 +- .../api-test-lws_cache/CMakeLists.txt | 20 ++++++++++++------- .../api-test-lws_tokenize/CMakeLists.txt | 8 ++++++++ .../api-test-secure-streams/CMakeLists.txt | 1 + .../minimal-http-client-certinfo.c | 2 +- .../minimal-http-client-multi/CMakeLists.txt | 4 ++++ .../minimal-http-client-post/CMakeLists.txt | 4 ++++ .../minimal-http-client/CMakeLists.txt | 9 ++++++--- .../CMakeLists.txt | 1 + .../minimal-secure-streams-avs/CMakeLists.txt | 1 + .../minimal-secure-streams-avs/main.c | 2 +- .../CMakeLists.txt | 1 + .../CMakeLists.txt | 1 + .../CMakeLists.txt | 1 + .../minimal-secure-streams-cpp/CMakeLists.txt | 1 + .../CMakeLists.txt | 1 + .../CMakeLists.txt | 4 +++- .../CMakeLists.txt | 1 + .../CMakeLists.txt | 2 ++ .../CMakeLists.txt | 2 ++ .../CMakeLists.txt | 1 + .../CMakeLists.txt | 1 + .../CMakeLists.txt | 1 + .../CMakeLists.txt | 1 + .../minimal-secure-streams-smd/CMakeLists.txt | 1 + .../CMakeLists.txt | 1 + .../CMakeLists.txt | 2 ++ .../CMakeLists.txt | 2 ++ .../CMakeLists.txt | 2 ++ .../minimal-secure-streams/CMakeLists.txt | 2 ++ .../minimal-ws-client.c | 1 + .../minimal-ws-client-spam/CMakeLists.txt | 4 ++++ .../client/binance/CMakeLists.txt | 1 + .../client/hello_world/CMakeLists.txt | 1 + .../client/http-post/CMakeLists.txt | 1 + .../client/ws-echo/CMakeLists.txt | 2 ++ plugins/protocol_post_demo.c | 4 ++++ 44 files changed, 96 insertions(+), 18 deletions(-) diff --git a/.sai.json b/.sai.json index 7ac992e1e..717638102 100644 --- a/.sai.json +++ b/.sai.json @@ -175,7 +175,7 @@ "platforms": "none,linux-fedora-32/x86_64-amd/gcc" }, "default-wolfssl": { - "cmake": "-DLWS_WITH_WOLFSSL=1 -DLWS_WOLFSSL_INCLUDE_DIRS=/usr/local/include -DLWS_WOLFSSL_LIBRARIES=/usr/local/lib/libwolfssl.so", + "cmake": "-DLWS_WITH_WOLFSSL=1 -DLWS_WOLFSSL_INCLUDE_DIRS=/usr/local/include -DLWS_WOLFSSL_LIBRARIES=/usr/local/lib/libwolfssl.so -DLWS_WITH_MINIMAL_EXAMPLES=0", "platforms": "none,linux-fedora-32/x86_64-amd/gcc" }, "default-examples": { diff --git a/CMakeLists-implied-options.txt b/CMakeLists-implied-options.txt index acb29cf7d..d5cfdd9f2 100644 --- a/CMakeLists-implied-options.txt +++ b/CMakeLists-implied-options.txt @@ -270,6 +270,10 @@ if (LWS_PLAT_FREERTOS) set(LWS_WITH_CUSTOM_HEADERS 0) endif() +if (LWS_WITHOUT_TESTAPPS) + set(LWS_WITH_MINIMAL_EXAMPLES 0) +endif() + #if (LWS_WITH_ESP32) # set(LWS_WITH_ZIP_FOPS 1) #endif() diff --git a/CMakeLists.txt b/CMakeLists.txt index 92f8762e3..20767781e 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -287,7 +287,11 @@ option(LWS_WITH_SELFTESTS "Selftests run at context creation" OFF) option(LWS_WITH_GCOV "Build with gcc gcov coverage instrumentation" OFF) option(LWS_WITH_EXPORT_LWSTARGETS "Export libwebsockets CMake targets. Disable if they conflict with an outer cmake project." ON) option(LWS_REPRODUCIBLE "Build libwebsockets reproducible. It removes the build user and hostname from the build" ON) +if (ESP_PLATFORM OR LWS_WITH_ESP32 OR LWS_PLAT_BAREMETAL OR LWS_PLAT_FREERTOS) option(LWS_WITH_MINIMAL_EXAMPLES "Also build the normally standalone minimal examples, for QA" OFF) +else() +option(LWS_WITH_MINIMAL_EXAMPLES "Also build the normally standalone minimal examples, for QA" ON) +endif() option(LWS_WITH_LWSAC "lwsac Chunk Allocation api" ON) option(LWS_WITH_CUSTOM_HEADERS "Store and allow querying custom HTTP headers (H1 only)" ON) option(LWS_WITH_DISKCACHE "Hashed cache directory with lazy LRU deletion to size limit (unrelated to lws_cache_ttl)" OFF) diff --git a/cmake/lws_config.h.in b/cmake/lws_config.h.in index 28c5ecf47..7e12456aa 100644 --- a/cmake/lws_config.h.in +++ b/cmake/lws_config.h.in @@ -227,6 +227,8 @@ #cmakedefine LWS_WITH_SYS_METRICS #cmakedefine LWS_WITH_SYS_NTPCLIENT #cmakedefine LWS_WITH_SYS_STATE +#cmakedefine LWS_WITHOUT_TEST_SERVER +#cmakedefine LWS_WITHOUT_TESTAPPS #cmakedefine LWS_WITH_THREADPOOL #cmakedefine LWS_WITH_TLS #cmakedefine LWS_WITH_TLS_JIT_TRUST diff --git a/lib/plat/unix/unix-init.c b/lib/plat/unix/unix-init.c index cbdfdb376..3e17991a2 100644 --- a/lib/plat/unix/unix-init.c +++ b/lib/plat/unix/unix-init.c @@ -198,7 +198,7 @@ lws_plat_init(struct lws_context *context, } #endif -#if defined(LWS_BUILTIN_PLUGIN_NAMES) +#if defined(LWS_BUILTIN_PLUGIN_NAMES) && defined(LWS_WITH_PLUGINS) lws_plugins_handle_builtin(&context->plugin_list, protocol_plugin_cb, context); #endif diff --git a/lib/plat/windows/windows-sockets.c b/lib/plat/windows/windows-sockets.c index ce9b7192e..7570a038d 100644 --- a/lib/plat/windows/windows-sockets.c +++ b/lib/plat/windows/windows-sockets.c @@ -594,7 +594,7 @@ lws_plat_mbedtls_net_recv(void *ctx, unsigned char *buf, size_t len) return ret; en = LWS_ERRNO; - if (en == EAGAIN || en == EWOULDBLOCK) + if (en == EAGAIN || en == EWOULDBLOCK || en == WSAEWOULDBLOCK) return MBEDTLS_ERR_SSL_WANT_READ; ret = WSAGetLastError(); diff --git a/lib/tls/CMakeLists.txt b/lib/tls/CMakeLists.txt index aaf4f4a26..ea84a9b5c 100644 --- a/lib/tls/CMakeLists.txt +++ b/lib/tls/CMakeLists.txt @@ -394,7 +394,7 @@ endif() # Generate self-signed SSL certs for the test-server. -if (LWS_WITH_SSL AND NOT LWS_WITH_WOLFSSL) +if (LWS_WITH_SSL) # AND NOT LWS_WITH_WOLFSSL) message("Searching for OpenSSL executable and dlls") find_package(OpenSSLbins) if (DEFINED OPENSSL_EXECUTABLE) diff --git a/minimal-examples-lowlevel/api-tests/api-test-lejp/main.c b/minimal-examples-lowlevel/api-tests/api-test-lejp/main.c index de6963ca6..2a6a2e41a 100644 --- a/minimal-examples-lowlevel/api-tests/api-test-lejp/main.c +++ b/minimal-examples-lowlevel/api-tests/api-test-lejp/main.c @@ -486,7 +486,7 @@ test_cb(struct lejp_ctx *ctx, char reason) for (n = 0; n < ctx->ipos; n++) t += lws_snprintf(i + t, sizeof(i) - (size_t)t - 1ul, "%d, ", ctx->i[n]); - printf("{ %d, %d, %d, { %s }, \"%s\", \"%s\" },\n", reason, ctx->ipos, ctx->path_match, i, ctx->path, ctx->buf); + lwsl_notice("{ %d, %d, %d, { %s }, \"%s\", \"%s\" },\n", reason, ctx->ipos, ctx->path_match, i, ctx->path, ctx->buf); if (m < LWS_ARRAY_SIZE(rpkg)) { if (step < rpkg[m].len) { diff --git a/minimal-examples-lowlevel/api-tests/api-test-lws_cache/CMakeLists.txt b/minimal-examples-lowlevel/api-tests/api-test-lws_cache/CMakeLists.txt index 72ae86a56..f3d7a19ba 100644 --- a/minimal-examples-lowlevel/api-tests/api-test-lws_cache/CMakeLists.txt +++ b/minimal-examples-lowlevel/api-tests/api-test-lws_cache/CMakeLists.txt @@ -8,12 +8,18 @@ include(LwsCheckRequirements) set(SAMP lws-api-test-lws_cache) set(SRCS main.c) -add_executable(${SAMP} ${SRCS}) -add_test(NAME api-test-lws_cache COMMAND lws-api-test-lws_cache) +set(requirements 1) +require_lws_config(LWS_ROLE_H1 1 requirements) +require_lws_config(LWS_WITH_NETWORK 1 requirements) -if (websockets_shared) - target_link_libraries(${SAMP} websockets_shared ${LIBWEBSOCKETS_DEP_LIBS}) - add_dependencies(${SAMP} websockets_shared) -else() - target_link_libraries(${SAMP} websockets ${LIBWEBSOCKETS_DEP_LIBS}) +if (requirements) + add_executable(${SAMP} ${SRCS}) + add_test(NAME api-test-lws_cache COMMAND lws-api-test-lws_cache) + + if (websockets_shared) + target_link_libraries(${SAMP} websockets_shared ${LIBWEBSOCKETS_DEP_LIBS}) + add_dependencies(${SAMP} websockets_shared) + else() + target_link_libraries(${SAMP} websockets ${LIBWEBSOCKETS_DEP_LIBS}) + endif() endif() diff --git a/minimal-examples-lowlevel/api-tests/api-test-lws_tokenize/CMakeLists.txt b/minimal-examples-lowlevel/api-tests/api-test-lws_tokenize/CMakeLists.txt index 503f25db1..a96db8891 100644 --- a/minimal-examples-lowlevel/api-tests/api-test-lws_tokenize/CMakeLists.txt +++ b/minimal-examples-lowlevel/api-tests/api-test-lws_tokenize/CMakeLists.txt @@ -8,6 +8,12 @@ include(LwsCheckRequirements) set(SAMP lws-api-test-lws_tokenize) set(SRCS main.c) +set(requirements 1) +require_lws_config(LWS_ROLE_H1 1 requirements) +require_lws_config(LWS_WITH_NETWORK 1 requirements) + +if (requirements) + add_executable(${SAMP} ${SRCS}) add_test(NAME api-test-lws_tokenize COMMAND lws-api-test-lws_tokenize) @@ -17,3 +23,5 @@ set(SRCS main.c) else() target_link_libraries(${SAMP} websockets ${LIBWEBSOCKETS_DEP_LIBS}) endif() + +endif() diff --git a/minimal-examples-lowlevel/api-tests/api-test-secure-streams/CMakeLists.txt b/minimal-examples-lowlevel/api-tests/api-test-secure-streams/CMakeLists.txt index 3c24f6de7..805790802 100644 --- a/minimal-examples-lowlevel/api-tests/api-test-secure-streams/CMakeLists.txt +++ b/minimal-examples-lowlevel/api-tests/api-test-secure-streams/CMakeLists.txt @@ -8,6 +8,7 @@ require_lws_config(LWS_WITH_SECURE_STREAMS 1 requirements) require_lws_config(LWS_WITH_TLS 1 requirements) require_lws_config(LWS_WITH_SYS_STATE 1 requirements) require_lws_config(LWS_WITH_SECURE_STREAMS_STATIC_POLICY_ONLY 0 requirements) +require_lws_config(USE_WOLFSSL 0 requirements) if (requirements) diff --git a/minimal-examples-lowlevel/http-client/minimal-http-client-certinfo/minimal-http-client-certinfo.c b/minimal-examples-lowlevel/http-client/minimal-http-client-certinfo/minimal-http-client-certinfo.c index 9f3bf04a6..428a1fb52 100644 --- a/minimal-examples-lowlevel/http-client/minimal-http-client-certinfo/minimal-http-client-certinfo.c +++ b/minimal-examples-lowlevel/http-client/minimal-http-client-certinfo/minimal-http-client-certinfo.c @@ -26,7 +26,7 @@ callback_http(struct lws *wsi, enum lws_callback_reasons reason, uint8_t buf[1280]; union lws_tls_cert_info_results *ci = (union lws_tls_cert_info_results *)buf; -#if defined(LWS_HAVE_CTIME_R) +#if defined(LWS_HAVE_CTIME_R) && !defined(LWS_WITH_NO_LOGS) char date[32]; #endif diff --git a/minimal-examples-lowlevel/http-client/minimal-http-client-multi/CMakeLists.txt b/minimal-examples-lowlevel/http-client/minimal-http-client-multi/CMakeLists.txt index 81789cc19..afb64af8d 100644 --- a/minimal-examples-lowlevel/http-client/minimal-http-client-multi/CMakeLists.txt +++ b/minimal-examples-lowlevel/http-client/minimal-http-client-multi/CMakeLists.txt @@ -14,6 +14,10 @@ require_lws_config(LWS_ROLE_H1 1 requirements) require_lws_config(LWS_WITH_CLIENT 1 requirements) require_lws_config(LWS_WITH_TLS 1 requirements) require_lws_config(LWS_WITH_SYS_STATE 1 requirements) +# ctest for this requires server +require_lws_config(LWS_WITH_SERVER 1 requirements) +require_lws_config(LWS_WITHOUT_TEST_SERVER 0 requirements) +require_lws_config(LWS_WITHOUT_TESTAPPS 0 requirements) require_lws_config(LWS_WITH_MBEDTLS 1 MBEDTLS) diff --git a/minimal-examples-lowlevel/http-client/minimal-http-client-post/CMakeLists.txt b/minimal-examples-lowlevel/http-client/minimal-http-client-post/CMakeLists.txt index e2aa5ed9f..95e92accd 100644 --- a/minimal-examples-lowlevel/http-client/minimal-http-client-post/CMakeLists.txt +++ b/minimal-examples-lowlevel/http-client/minimal-http-client-post/CMakeLists.txt @@ -12,6 +12,10 @@ set(requirements 1) set(MBEDTLS 0) require_lws_config(LWS_ROLE_H1 1 requirements) require_lws_config(LWS_WITH_CLIENT 1 requirements) +# ctest for this requires server +require_lws_config(LWS_WITH_SERVER 1 requirements) +require_lws_config(LWS_WITHOUT_TEST_SERVER 0 requirements) +require_lws_config(LWS_WITHOUT_TESTAPPS 0 requirements) require_lws_config(LWS_WITH_MBEDTLS 1 MBEDTLS) diff --git a/minimal-examples-lowlevel/http-client/minimal-http-client/CMakeLists.txt b/minimal-examples-lowlevel/http-client/minimal-http-client/CMakeLists.txt index 73c0cdbf0..ee33fff7a 100644 --- a/minimal-examples-lowlevel/http-client/minimal-http-client/CMakeLists.txt +++ b/minimal-examples-lowlevel/http-client/minimal-http-client/CMakeLists.txt @@ -21,6 +21,7 @@ set(requirements 1) require_lws_config(LWS_ROLE_H1 1 requirements) require_lws_config(LWS_WITH_CLIENT 1 requirements) require_lws_config(LWS_WITH_SYS_STATE 1 requirements) +require_lws_config(LWS_WITH_TLS 1 requirements) require_lws_config(LWS_ROLE_H2 1 has_h2) require_lws_config(LWS_WITH_SYS_FAULT_INJECTION 1 has_fault_injection) @@ -149,9 +150,11 @@ if (requirements) message("... skipping mbedtls wrong CA test") endif() - set_tests_properties(${mytests} PROPERTIES - WORKING_DIRECTORY ${CMAKE_SOURCE_DIR}/minimal-examples-lowlevel/http-client/minimal-http-client - TIMEOUT 20) + foreach(N IN LISTS mytests) + set_tests_properties(${N} PROPERTIES + WORKING_DIRECTORY ${CMAKE_SOURCE_DIR}/minimal-examples-lowlevel/http-client/minimal-http-client + TIMEOUT 20) + endforeach() if (DEFINED ENV{SAI_OVN}) set_tests_properties(${mytests} PROPERTIES diff --git a/minimal-examples-lowlevel/secure-streams/minimal-secure-streams-alexa/CMakeLists.txt b/minimal-examples-lowlevel/secure-streams/minimal-secure-streams-alexa/CMakeLists.txt index 5400c2490..e2c5725b4 100644 --- a/minimal-examples-lowlevel/secure-streams/minimal-secure-streams-alexa/CMakeLists.txt +++ b/minimal-examples-lowlevel/secure-streams/minimal-secure-streams-alexa/CMakeLists.txt @@ -15,6 +15,7 @@ require_lws_config(LWS_WITH_SECURE_STREAMS 1 requirements) require_lws_config(LWS_WITH_SECURE_STREAMS_STATIC_POLICY_ONLY 0 requirements) require_lws_config(LWS_WITH_ALSA 1 requirements) require_lws_config(LWS_WITH_SYS_STATE 1 requirements) +require_lws_config(USE_WOLFSSL 0 requirements) if (requirements) add_executable(${SAMP} ${SRCS}) diff --git a/minimal-examples-lowlevel/secure-streams/minimal-secure-streams-avs/CMakeLists.txt b/minimal-examples-lowlevel/secure-streams/minimal-secure-streams-avs/CMakeLists.txt index 1ec1318f4..fc657b41f 100644 --- a/minimal-examples-lowlevel/secure-streams/minimal-secure-streams-avs/CMakeLists.txt +++ b/minimal-examples-lowlevel/secure-streams/minimal-secure-streams-avs/CMakeLists.txt @@ -13,6 +13,7 @@ require_lws_config(LWS_WITHOUT_CLIENT 0 requirements) require_lws_config(LWS_WITH_SECURE_STREAMS 1 requirements) require_lws_config(LWS_WITH_SECURE_STREAMS_STATIC_POLICY_ONLY 0 requirements) require_lws_config(LWS_WITH_SYS_STATE 1 requirements) +require_lws_config(USE_WOLFSSL 0 requirements) if (requirements) add_executable(${SAMP} main.c avs.c) diff --git a/minimal-examples-lowlevel/secure-streams/minimal-secure-streams-avs/main.c b/minimal-examples-lowlevel/secure-streams/minimal-secure-streams-avs/main.c index 56ca531fa..5c8a25206 100644 --- a/minimal-examples-lowlevel/secure-streams/minimal-secure-streams-avs/main.c +++ b/minimal-examples-lowlevel/secure-streams/minimal-secure-streams-avs/main.c @@ -346,7 +346,7 @@ int main(int argc, const char **argv) nl.notify_cb = app_system_state_nf; info.register_notifier_list = app_notifier_list; - puts(default_ss_policy); +// puts(default_ss_policy); context = lws_create_context(&info); if (!context) { diff --git a/minimal-examples-lowlevel/secure-streams/minimal-secure-streams-binance/CMakeLists.txt b/minimal-examples-lowlevel/secure-streams/minimal-secure-streams-binance/CMakeLists.txt index c95db11d9..ab63e214e 100644 --- a/minimal-examples-lowlevel/secure-streams/minimal-secure-streams-binance/CMakeLists.txt +++ b/minimal-examples-lowlevel/secure-streams/minimal-secure-streams-binance/CMakeLists.txt @@ -15,6 +15,7 @@ require_lws_config(LWS_WITH_CLIENT 1 requirements) require_lws_config(LWS_WITHOUT_EXTENSIONS 0 requirements) require_lws_config(LWS_WITH_SECURE_STREAMS 1 requirements) require_lws_config(LWS_WITH_SECURE_STREAMS_STATIC_POLICY_ONLY 0 requirements) +require_lws_config(USE_WOLFSSL 0 requirements) if (requirements) add_executable(${SAMP} ${SRCS}) diff --git a/minimal-examples-lowlevel/secure-streams/minimal-secure-streams-blob/CMakeLists.txt b/minimal-examples-lowlevel/secure-streams/minimal-secure-streams-blob/CMakeLists.txt index 27d0b533d..3ddd46502 100644 --- a/minimal-examples-lowlevel/secure-streams/minimal-secure-streams-blob/CMakeLists.txt +++ b/minimal-examples-lowlevel/secure-streams/minimal-secure-streams-blob/CMakeLists.txt @@ -14,6 +14,7 @@ require_lws_config(LWS_WITH_SECURE_STREAMS 1 requirements) require_lws_config(LWS_WITH_SECURE_STREAMS_STATIC_POLICY_ONLY 0 requirements) require_lws_config(LWS_WITH_SYS_STATE 1 requirements) require_lws_config(LWS_WITH_GENCRYPTO 1 requirements) +require_lws_config(USE_WOLFSSL 0 requirements) if (requirements) add_executable(${SAMP} minimal-secure-streams.c) diff --git a/minimal-examples-lowlevel/secure-streams/minimal-secure-streams-client-tx/CMakeLists.txt b/minimal-examples-lowlevel/secure-streams/minimal-secure-streams-client-tx/CMakeLists.txt index b57e6fe71..f19302fb9 100644 --- a/minimal-examples-lowlevel/secure-streams/minimal-secure-streams-client-tx/CMakeLists.txt +++ b/minimal-examples-lowlevel/secure-streams/minimal-secure-streams-client-tx/CMakeLists.txt @@ -14,6 +14,7 @@ require_lws_config(LWS_WITHOUT_CLIENT 0 requirements) require_lws_config(LWS_WITH_SECURE_STREAMS 1 requirements) require_lws_config(LWS_WITH_SECURE_STREAMS_PROXY_API 1 requirements) require_lws_config(LWS_WITH_SYS_STATE 1 requirements) +require_lws_config(USE_WOLFSSL 0 requirements) if (requirements) add_executable(${SAMP} ${SRCS}) diff --git a/minimal-examples-lowlevel/secure-streams/minimal-secure-streams-cpp/CMakeLists.txt b/minimal-examples-lowlevel/secure-streams/minimal-secure-streams-cpp/CMakeLists.txt index f86e75d9f..e664b4543 100644 --- a/minimal-examples-lowlevel/secure-streams/minimal-secure-streams-cpp/CMakeLists.txt +++ b/minimal-examples-lowlevel/secure-streams/minimal-secure-streams-cpp/CMakeLists.txt @@ -14,6 +14,7 @@ require_lws_config(LWS_WITH_MBEDTLS 0 requirements) require_lws_config(LWS_WITH_SECURE_STREAMS 1 requirements) require_lws_config(LWS_WITH_SECURE_STREAMS_CPP 1 requirements) require_lws_config(LWS_WITH_SECURE_STREAMS_STATIC_POLICY_ONLY 0 requirements) +require_lws_config(USE_WOLFSSL 0 requirements) if (requirements) add_executable(${SAMP} main.cxx) diff --git a/minimal-examples-lowlevel/secure-streams/minimal-secure-streams-custom-client-transport/CMakeLists.txt b/minimal-examples-lowlevel/secure-streams/minimal-secure-streams-custom-client-transport/CMakeLists.txt index 723908c2c..686619f51 100644 --- a/minimal-examples-lowlevel/secure-streams/minimal-secure-streams-custom-client-transport/CMakeLists.txt +++ b/minimal-examples-lowlevel/secure-streams/minimal-secure-streams-custom-client-transport/CMakeLists.txt @@ -14,6 +14,7 @@ require_lws_config(LWS_WITH_CLIENT 1 requirements) require_lws_config(LWS_WITH_SECURE_STREAMS 1 requirements) require_lws_config(LWS_WITH_SECURE_STREAMS_PROXY_API 1 requirements) require_lws_config(LWS_ONLY_SSPC 1 requirements) +require_lws_config(USE_WOLFSSL 0 requirements) if (requirements) add_executable(${SAMP} ${SRCS}) diff --git a/minimal-examples-lowlevel/secure-streams/minimal-secure-streams-hugeurl/CMakeLists.txt b/minimal-examples-lowlevel/secure-streams/minimal-secure-streams-hugeurl/CMakeLists.txt index 48f046b8f..bf97641e1 100644 --- a/minimal-examples-lowlevel/secure-streams/minimal-secure-streams-hugeurl/CMakeLists.txt +++ b/minimal-examples-lowlevel/secure-streams/minimal-secure-streams-hugeurl/CMakeLists.txt @@ -14,6 +14,8 @@ require_lws_config(LWS_WITHOUT_CLIENT 0 requirements) require_lws_config(LWS_WITH_SECURE_STREAMS 1 requirements) require_lws_config(LWS_WITH_SECURE_STREAMS_STATIC_POLICY_ONLY 0 requirements) require_lws_config(LWS_WITH_SYS_STATE 1 requirements) +require_lws_config(USE_WOLFSSL 0 requirements) +require_lws_config(LWS_WITH_TLS 1 requirements) if (requirements) add_executable(${SAMP} minimal-secure-streams.c) @@ -51,7 +53,7 @@ if (requirements) set_tests_properties(ss-warmcat-hurl PROPERTIES - WORKING_DIRECTORY ${CMAKE_SOURCE_DIR}/minimal-examples-lowlevel/secure-streams/minimal-secure-streams + WORKING_DIRECTORY ${CMAKE_SOURCE_DIR}/minimal-examples-lowlevel/secure-streams/minimal-secure-streams-hugeurl TIMEOUT 20) if (DEFINED ENV{SAI_OVN}) set_tests_properties(ss-warmcat-hurl PROPERTIES FIXTURES_REQUIRED "res_sspcmin_hurl") diff --git a/minimal-examples-lowlevel/secure-streams/minimal-secure-streams-metadata/CMakeLists.txt b/minimal-examples-lowlevel/secure-streams/minimal-secure-streams-metadata/CMakeLists.txt index 67c946a83..1cdf17906 100644 --- a/minimal-examples-lowlevel/secure-streams/minimal-secure-streams-metadata/CMakeLists.txt +++ b/minimal-examples-lowlevel/secure-streams/minimal-secure-streams-metadata/CMakeLists.txt @@ -13,6 +13,7 @@ require_lws_config(LWS_WITHOUT_CLIENT 0 requirements) require_lws_config(LWS_WITH_SECURE_STREAMS 1 requirements) require_lws_config(LWS_WITH_SECURE_STREAMS_STATIC_POLICY_ONLY 0 requirements) require_lws_config(LWS_WITH_SYS_STATE 1 requirements) +require_lws_config(USE_WOLFSSL 0 requirements) if (requirements) add_executable(${SAMP} minimal-secure-streams.c) diff --git a/minimal-examples-lowlevel/secure-streams/minimal-secure-streams-perf/CMakeLists.txt b/minimal-examples-lowlevel/secure-streams/minimal-secure-streams-perf/CMakeLists.txt index 3cb8cb0df..ba3776d7a 100644 --- a/minimal-examples-lowlevel/secure-streams/minimal-secure-streams-perf/CMakeLists.txt +++ b/minimal-examples-lowlevel/secure-streams/minimal-secure-streams-perf/CMakeLists.txt @@ -13,6 +13,8 @@ require_lws_config(LWS_WITHOUT_CLIENT 0 requirements) require_lws_config(LWS_WITH_SECURE_STREAMS 1 requirements) require_lws_config(LWS_WITH_SECURE_STREAMS_STATIC_POLICY_ONLY 0 requirements) require_lws_config(LWS_WITH_SYS_STATE 1 requirements) +require_lws_config(USE_WOLFSSL 0 requirements) +require_lws_config(LWS_WITH_TLS 1 requirements) if (requirements) add_executable(${SAMP} minimal-secure-streams.c) diff --git a/minimal-examples-lowlevel/secure-streams/minimal-secure-streams-post/CMakeLists.txt b/minimal-examples-lowlevel/secure-streams/minimal-secure-streams-post/CMakeLists.txt index e8c94393e..ba165e907 100644 --- a/minimal-examples-lowlevel/secure-streams/minimal-secure-streams-post/CMakeLists.txt +++ b/minimal-examples-lowlevel/secure-streams/minimal-secure-streams-post/CMakeLists.txt @@ -13,6 +13,8 @@ require_lws_config(LWS_WITHOUT_CLIENT 0 requirements) require_lws_config(LWS_WITH_SECURE_STREAMS 1 requirements) require_lws_config(LWS_WITH_SECURE_STREAMS_STATIC_POLICY_ONLY 0 requirements) require_lws_config(LWS_WITH_SYS_STATE 1 requirements) +require_lws_config(USE_WOLFSSL 0 requirements) +require_lws_config(LWS_WITH_TLS 1 requirements) if (requirements) add_executable(${SAMP} minimal-secure-streams-post.c) diff --git a/minimal-examples-lowlevel/secure-streams/minimal-secure-streams-proxy/CMakeLists.txt b/minimal-examples-lowlevel/secure-streams/minimal-secure-streams-proxy/CMakeLists.txt index 0d0f5488d..c08f590fd 100644 --- a/minimal-examples-lowlevel/secure-streams/minimal-secure-streams-proxy/CMakeLists.txt +++ b/minimal-examples-lowlevel/secure-streams/minimal-secure-streams-proxy/CMakeLists.txt @@ -15,6 +15,7 @@ require_lws_config(LWS_WITH_SECURE_STREAMS 1 requirements) require_lws_config(LWS_WITH_SECURE_STREAMS_PROXY_API 1 requirements) require_lws_config(LWS_WITH_SECURE_STREAMS_STATIC_POLICY_ONLY 0 requirements) require_lws_config(LWS_WITH_SYS_STATE 1 requirements) +require_lws_config(USE_WOLFSSL 0 requirements) if (requirements) add_executable(${SAMP} ${SRCS}) diff --git a/minimal-examples-lowlevel/secure-streams/minimal-secure-streams-server-raw/CMakeLists.txt b/minimal-examples-lowlevel/secure-streams/minimal-secure-streams-server-raw/CMakeLists.txt index 205f50287..36dfc14c3 100644 --- a/minimal-examples-lowlevel/secure-streams/minimal-secure-streams-server-raw/CMakeLists.txt +++ b/minimal-examples-lowlevel/secure-streams/minimal-secure-streams-server-raw/CMakeLists.txt @@ -14,6 +14,7 @@ require_lws_config(LWS_WITH_SERVER 1 requirements) require_lws_config(LWS_WITH_SYS_SMD 1 requirements) require_lws_config(LWS_WITH_SECURE_STREAMS 1 requirements) require_lws_config(LWS_WITH_SECURE_STREAMS_STATIC_POLICY_ONLY 0 requirements) +require_lws_config(USE_WOLFSSL 0 requirements) if (requirements) add_executable(${SAMP} ${SRCS}) diff --git a/minimal-examples-lowlevel/secure-streams/minimal-secure-streams-server/CMakeLists.txt b/minimal-examples-lowlevel/secure-streams/minimal-secure-streams-server/CMakeLists.txt index 19dff5afd..8057bebe3 100644 --- a/minimal-examples-lowlevel/secure-streams/minimal-secure-streams-server/CMakeLists.txt +++ b/minimal-examples-lowlevel/secure-streams/minimal-secure-streams-server/CMakeLists.txt @@ -15,6 +15,7 @@ require_lws_config(LWS_WITH_SERVER 1 requirements) require_lws_config(LWS_WITH_SYS_SMD 1 requirements) require_lws_config(LWS_WITH_SECURE_STREAMS 1 requirements) require_lws_config(LWS_WITH_SECURE_STREAMS_STATIC_POLICY_ONLY 0 requirements) +require_lws_config(USE_WOLFSSL 0 requirements) if (requirements) add_executable(${SAMP} ${SRCS}) diff --git a/minimal-examples-lowlevel/secure-streams/minimal-secure-streams-sigv4/CMakeLists.txt b/minimal-examples-lowlevel/secure-streams/minimal-secure-streams-sigv4/CMakeLists.txt index 7a76fe869..63a2896fd 100644 --- a/minimal-examples-lowlevel/secure-streams/minimal-secure-streams-sigv4/CMakeLists.txt +++ b/minimal-examples-lowlevel/secure-streams/minimal-secure-streams-sigv4/CMakeLists.txt @@ -12,6 +12,7 @@ require_lws_config(LWS_ROLE_H1 1 requirements) require_lws_config(LWS_WITHOUT_CLIENT 0 requirements) require_lws_config(LWS_WITH_SECURE_STREAMS 1 requirements) require_lws_config(LWS_WITH_SECURE_STREAMS_AUTH_SIGV4 1 requirements) +require_lws_config(USE_WOLFSSL 0 requirements) if (requirements) add_executable(${SAMP} ss-s3-main.c ss-s3-ss.c) diff --git a/minimal-examples-lowlevel/secure-streams/minimal-secure-streams-smd/CMakeLists.txt b/minimal-examples-lowlevel/secure-streams/minimal-secure-streams-smd/CMakeLists.txt index d5488deb9..d3fad6df8 100644 --- a/minimal-examples-lowlevel/secure-streams/minimal-secure-streams-smd/CMakeLists.txt +++ b/minimal-examples-lowlevel/secure-streams/minimal-secure-streams-smd/CMakeLists.txt @@ -12,6 +12,7 @@ require_lws_config(LWS_WITH_SECURE_STREAMS 1 requirements) require_lws_config(LWS_WITH_SYS_SMD 1 requirements) require_lws_config(LWS_WITH_SECURE_STREAMS_STATIC_POLICY_ONLY 0 requirements) require_lws_config(LWS_WITH_SYS_STATE 1 requirements) +require_lws_config(USE_WOLFSSL 0 requirements) require_lws_config(LWS_WITH_SYS_FAULT_INJECTION 1 has_fault_injection) diff --git a/minimal-examples-lowlevel/secure-streams/minimal-secure-streams-staticpolicy/CMakeLists.txt b/minimal-examples-lowlevel/secure-streams/minimal-secure-streams-staticpolicy/CMakeLists.txt index da537213e..4cdcbf04e 100644 --- a/minimal-examples-lowlevel/secure-streams/minimal-secure-streams-staticpolicy/CMakeLists.txt +++ b/minimal-examples-lowlevel/secure-streams/minimal-secure-streams-staticpolicy/CMakeLists.txt @@ -12,6 +12,7 @@ require_lws_config(LWS_ROLE_H1 1 requirements) require_lws_config(LWS_WITHOUT_CLIENT 0 requirements) require_lws_config(LWS_WITH_SECURE_STREAMS 1 requirements) require_lws_config(LWS_WITH_SECURE_STREAMS_STATIC_POLICY_ONLY 1 requirements) +require_lws_config(USE_WOLFSSL 0 requirements) if (requirements) add_executable(${SAMP} minimal-secure-streams.c) diff --git a/minimal-examples-lowlevel/secure-streams/minimal-secure-streams-stress/CMakeLists.txt b/minimal-examples-lowlevel/secure-streams/minimal-secure-streams-stress/CMakeLists.txt index 17e76e38c..106effac5 100644 --- a/minimal-examples-lowlevel/secure-streams/minimal-secure-streams-stress/CMakeLists.txt +++ b/minimal-examples-lowlevel/secure-streams/minimal-secure-streams-stress/CMakeLists.txt @@ -13,6 +13,8 @@ require_lws_config(LWS_WITHOUT_CLIENT 0 requirements) require_lws_config(LWS_WITH_SECURE_STREAMS 1 requirements) require_lws_config(LWS_WITH_SECURE_STREAMS_STATIC_POLICY_ONLY 0 requirements) require_lws_config(LWS_WITH_SYS_STATE 1 requirements) +require_lws_config(LWS_WITH_TLS 1 requirements) +require_lws_config(USE_WOLFSSL 0 requirements) if (NOT WIN32) if (requirements) diff --git a/minimal-examples-lowlevel/secure-streams/minimal-secure-streams-testsfail/CMakeLists.txt b/minimal-examples-lowlevel/secure-streams/minimal-secure-streams-testsfail/CMakeLists.txt index 9ed9fd57b..55931f1d2 100644 --- a/minimal-examples-lowlevel/secure-streams/minimal-secure-streams-testsfail/CMakeLists.txt +++ b/minimal-examples-lowlevel/secure-streams/minimal-secure-streams-testsfail/CMakeLists.txt @@ -14,6 +14,8 @@ require_lws_config(LWS_WITHOUT_CLIENT 0 requirements) require_lws_config(LWS_WITH_SECURE_STREAMS 1 requirements) require_lws_config(LWS_WITH_SECURE_STREAMS_STATIC_POLICY_ONLY 0 requirements) require_lws_config(LWS_WITH_SYS_STATE 1 requirements) +require_lws_config(USE_WOLFSSL 0 requirements) +require_lws_config(LWS_WITH_TLS 1 requirements) if (requirements) add_executable(${SAMP} minimal-secure-streams-testsfail.c) diff --git a/minimal-examples-lowlevel/secure-streams/minimal-secure-streams-threads/CMakeLists.txt b/minimal-examples-lowlevel/secure-streams/minimal-secure-streams-threads/CMakeLists.txt index 9443dc2f8..e6907af70 100644 --- a/minimal-examples-lowlevel/secure-streams/minimal-secure-streams-threads/CMakeLists.txt +++ b/minimal-examples-lowlevel/secure-streams/minimal-secure-streams-threads/CMakeLists.txt @@ -13,6 +13,8 @@ require_lws_config(LWS_WITH_SECURE_STREAMS 1 requirements) require_lws_config(LWS_WITH_SYS_SMD 1 requirements) require_lws_config(LWS_WITH_SECURE_STREAMS_STATIC_POLICY_ONLY 0 requirements) require_lws_config(LWS_WITH_SYS_STATE 1 requirements) +require_lws_config(LWS_WITH_NO_LOGS 0 requirements) +require_lws_config(USE_WOLFSSL 0 requirements) if (requirements AND NOT WIN32) # win32 has problems with pthreads.h and timespec struct redef diff --git a/minimal-examples-lowlevel/secure-streams/minimal-secure-streams/CMakeLists.txt b/minimal-examples-lowlevel/secure-streams/minimal-secure-streams/CMakeLists.txt index bdf8ef62e..daca37341 100644 --- a/minimal-examples-lowlevel/secure-streams/minimal-secure-streams/CMakeLists.txt +++ b/minimal-examples-lowlevel/secure-streams/minimal-secure-streams/CMakeLists.txt @@ -13,6 +13,8 @@ require_lws_config(LWS_WITHOUT_CLIENT 0 requirements) require_lws_config(LWS_WITH_SECURE_STREAMS 1 requirements) require_lws_config(LWS_WITH_SECURE_STREAMS_STATIC_POLICY_ONLY 0 requirements) require_lws_config(LWS_WITH_SYS_STATE 1 requirements) +require_lws_config(LWS_WITH_TLS 1 requirements) +require_lws_config(USE_WOLFSSL 0 requirements) require_lws_config(LWS_WITH_SYS_FAULT_INJECTION 1 has_fault_injection) diff --git a/minimal-examples-lowlevel/ws-client/minimal-ws-client-spam-tx-rx/minimal-ws-client.c b/minimal-examples-lowlevel/ws-client/minimal-ws-client-spam-tx-rx/minimal-ws-client.c index 98b08cd06..cbcaed4dc 100644 --- a/minimal-examples-lowlevel/ws-client/minimal-ws-client-spam-tx-rx/minimal-ws-client.c +++ b/minimal-examples-lowlevel/ws-client/minimal-ws-client-spam-tx-rx/minimal-ws-client.c @@ -1,6 +1,7 @@ #include #include #include +#include #if defined(WIN32) #define HAVE_STRUCT_TIMESPEC #if defined(pid_t) diff --git a/minimal-examples-lowlevel/ws-client/minimal-ws-client-spam/CMakeLists.txt b/minimal-examples-lowlevel/ws-client/minimal-ws-client-spam/CMakeLists.txt index fc0402bfa..1846fabc7 100644 --- a/minimal-examples-lowlevel/ws-client/minimal-ws-client-spam/CMakeLists.txt +++ b/minimal-examples-lowlevel/ws-client/minimal-ws-client-spam/CMakeLists.txt @@ -14,6 +14,10 @@ require_pthreads(requirements) require_lws_config(LWS_ROLE_WS 1 requirements) require_lws_config(LWS_WITH_CLIENT 1 requirements) require_lws_config(LWS_WITH_TLS 1 requirements) +# ctest for this requires server +require_lws_config(LWS_WITH_SERVER 1 requirements) +require_lws_config(LWS_WITHOUT_TEST_SERVER 0 requirements) +require_lws_config(LWS_WITHOUT_TESTAPPS 0 requirements) if (requirements) add_executable(${SAMP} ${SRCS}) diff --git a/minimal-examples/client/binance/CMakeLists.txt b/minimal-examples/client/binance/CMakeLists.txt index 4da694e24..e652baa33 100644 --- a/minimal-examples/client/binance/CMakeLists.txt +++ b/minimal-examples/client/binance/CMakeLists.txt @@ -8,6 +8,7 @@ require_lws_config(LWS_ROLE_WS 1 requirements) require_lws_config(LWS_WITH_CLIENT 1 requirements) require_lws_config(LWS_WITHOUT_EXTENSIONS 0 requirements) require_lws_config(LWS_WITH_SECURE_STREAMS 1 requirements) +require_lws_config(LWS_WITH_TLS 1 requirements) require_lws_config(LWS_WITH_SECURE_STREAMS_PROXY_API 1 has_ss_proxy) diff --git a/minimal-examples/client/hello_world/CMakeLists.txt b/minimal-examples/client/hello_world/CMakeLists.txt index 98c5692f1..ace42661c 100644 --- a/minimal-examples/client/hello_world/CMakeLists.txt +++ b/minimal-examples/client/hello_world/CMakeLists.txt @@ -6,6 +6,7 @@ require_lws_config(LWS_ROLE_H1 1 requirements) require_lws_config(LWS_WITHOUT_CLIENT 0 requirements) require_lws_config(LWS_WITH_SECURE_STREAMS 1 requirements) require_lws_config(LWS_WITH_SECURE_STREAMS_STATIC_POLICY_ONLY 0 requirements) +require_lws_config(LWS_WITH_TLS 1 requirements) require_lws_config(LWS_WITH_SYS_FAULT_INJECTION 1 has_fault_injection) require_lws_config(LWS_WITH_SECURE_STREAMS_PROXY_API 1 has_ss_proxy) diff --git a/minimal-examples/client/http-post/CMakeLists.txt b/minimal-examples/client/http-post/CMakeLists.txt index 927335f2b..bfcd713a4 100644 --- a/minimal-examples/client/http-post/CMakeLists.txt +++ b/minimal-examples/client/http-post/CMakeLists.txt @@ -6,6 +6,7 @@ require_lws_config(LWS_ROLE_H1 1 requirements) require_lws_config(LWS_WITHOUT_CLIENT 0 requirements) require_lws_config(LWS_WITH_SECURE_STREAMS 1 requirements) require_lws_config(LWS_WITH_SECURE_STREAMS_STATIC_POLICY_ONLY 0 requirements) +require_lws_config(LWS_WITH_TLS 1 requirements) require_lws_config(LWS_WITH_SYS_FAULT_INJECTION 1 has_fault_injection) require_lws_config(LWS_WITH_SECURE_STREAMS_PROXY_API 1 has_ss_proxy) diff --git a/minimal-examples/client/ws-echo/CMakeLists.txt b/minimal-examples/client/ws-echo/CMakeLists.txt index 37c89925a..168ba4383 100644 --- a/minimal-examples/client/ws-echo/CMakeLists.txt +++ b/minimal-examples/client/ws-echo/CMakeLists.txt @@ -3,9 +3,11 @@ cmake_minimum_required(VERSION 2.8.12) find_package(libwebsockets CONFIG REQUIRED) require_lws_config(LWS_ROLE_H1 1 requirements) +require_lws_config(LWS_ROLE_WS 1 requirements) require_lws_config(LWS_WITHOUT_CLIENT 0 requirements) require_lws_config(LWS_WITH_SECURE_STREAMS 1 requirements) require_lws_config(LWS_WITH_SECURE_STREAMS_STATIC_POLICY_ONLY 0 requirements) +require_lws_config(LWS_WITH_TLS 1 requirements) require_lws_config(LWS_WITH_SYS_FAULT_INJECTION 1 has_fault_injection) require_lws_config(LWS_WITH_SECURE_STREAMS_PROXY_API 1 has_ss_proxy) diff --git a/plugins/protocol_post_demo.c b/plugins/protocol_post_demo.c index 55ce4eb3d..b9409cad7 100644 --- a/plugins/protocol_post_demo.c +++ b/plugins/protocol_post_demo.c @@ -108,7 +108,11 @@ file_upload_cb(void *data, const char *name, const char *filename, break; #if !defined(LWS_WITH_ESP32) close((int)(lws_intptr_t)pss->fd); +#if defined(__MINGW32__) + pss->fd = -1; +#else pss->fd = LWS_INVALID_FILE; +#endif #endif break; case LWS_UFS_CLOSE: