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: