diff --git a/.sai.json b/.sai.json index da2758225..a8295e098 100644 --- a/.sai.json +++ b/.sai.json @@ -14,6 +14,9 @@ "linux-debian-sid/x86_64-amd/gcc": { "build": "mkdir build destdir;cd build;export CCACHE_DISABLE=1;export LD_LIBRARY_PATH=../destdir/usr/local/share/libwebsockets-test-server/plugins:../destdir/usr/local/lib;export SAI_CPACK=\"-G DEB\";cmake .. ${cmake} && make -j4 && rm -rf ../destdir && make -j DESTDIR=../destdir install && ctest -j2 --output-on-failure ${cpack}" }, + "linux-ubuntu-xenial/x86_64-amd/gcc": { + "build": "mkdir build destdir;cd build;export CCACHE_DISABLE=1;export LD_LIBRARY_PATH=../destdir/usr/local/share/libwebsockets-test-server/plugins:../destdir/usr/local/lib;export SAI_CPACK=\"-G DEB\";cmake .. ${cmake} && make -j4 && rm -rf ../destdir && make -j DESTDIR=../destdir install && ctest -j2 --output-on-failure ${cpack}" + }, "linux-debian-sid/x86-amd/gcc": { "build": "mkdir build destdir;cd build;export CCACHE_DISABLE=1;export LD_LIBRARY_PATH=../destdir/usr/local/share/libwebsockets-test-server/plugins:../destdir/usr/local/lib;export SAI_CPACK=\"-G DEB\";cmake .. ${cmake} && make -j4 && rm -rf ../destdir && make -j DESTDIR=../destdir install && ctest -j2 --output-on-failure ${cpack}" }, diff --git a/lib/roles/dbus/CMakeLists.txt b/lib/roles/dbus/CMakeLists.txt index 22cbb22f5..c27cffc66 100644 --- a/lib/roles/dbus/CMakeLists.txt +++ b/lib/roles/dbus/CMakeLists.txt @@ -52,7 +52,9 @@ int main(void) { }" LWS_DBUS_CHECK_OK) message("dbus include dir 1: ${LWS_DBUS_INCLUDE1}") +if (LWS_DBUS_INCLUDE1) include_directories("${LWS_DBUS_INCLUDE1}") +endif() list(APPEND LIB_LIST ${LWS_DBUS_LIB}) # diff --git a/lib/roles/http/compression/stream.c b/lib/roles/http/compression/stream.c index fcc40d3c6..9898b76f9 100644 --- a/lib/roles/http/compression/stream.c +++ b/lib/roles/http/compression/stream.c @@ -52,7 +52,7 @@ lws_http_compression_validate(struct lws *wsi) for (n = 0; n < LWS_ARRAY_SIZE(lcs_available); n++) if (strstr(a, lcs_available[n]->encoding_name)) - wsi->http.comp_accept_mask |= (uint8_t)(1 << n); + wsi->http.comp_accept_mask = (uint8_t)(wsi->http.comp_accept_mask | (1 << n)); return 0; } diff --git a/lib/roles/mqtt/mqtt.c b/lib/roles/mqtt/mqtt.c index bbf70dbef..b47bbe93e 100644 --- a/lib/roles/mqtt/mqtt.c +++ b/lib/roles/mqtt/mqtt.c @@ -1346,8 +1346,8 @@ bail1: par->flag_prop_multi = !!( par->props_seen[par->prop_id >> 3] & (1 << (par->prop_id & 7))); - par->props_seen[par->prop_id >> 3] |= - (uint8_t)(1 << (par->prop_id & 7)); + par->props_seen[par->prop_id >> 3] = + (uint8_t)((par->props_seen[par->prop_id >> 3]) | (1 << (par->prop_id & 7))); /* * even if it's not a vbi property arg, * .consumed of this will be zero the first time diff --git a/lib/system/async-dns/async-dns-parse.c b/lib/system/async-dns/async-dns-parse.c index a0eae878b..c0dd9ae1a 100644 --- a/lib/system/async-dns/async-dns-parse.c +++ b/lib/system/async-dns/async-dns-parse.c @@ -568,7 +568,7 @@ lws_adns_parse_udp(lws_async_dns_t *dns, const uint8_t *pkt, size_t len) goto fail_out; } - q->responded |= (uint8_t)n; + q->responded = (uint8_t)(q->responded | n); /* we want to confirm the results against what we last requested... */ diff --git a/lib/tls/mbedtls/mbedtls-client.c b/lib/tls/mbedtls/mbedtls-client.c index e81a692a0..38f8a33b9 100644 --- a/lib/tls/mbedtls/mbedtls-client.c +++ b/lib/tls/mbedtls/mbedtls-client.c @@ -188,7 +188,7 @@ int ERR_get_error(void) enum lws_ssl_capable_status lws_tls_client_connect(struct lws *wsi, char *errbuf, size_t elen) { - int m, n = SSL_connect(wsi->tls.ssl); + int m, n = SSL_connect(wsi->tls.ssl), en; const unsigned char *prot; unsigned int len; @@ -199,6 +199,7 @@ lws_tls_client_connect(struct lws *wsi, char *errbuf, size_t elen) return LWS_SSL_CAPABLE_DONE; } + en = (int)LWS_ERRNO; m = SSL_get_error(wsi->tls.ssl, n); if (m == SSL_ERROR_WANT_READ || SSL_want_read(wsi->tls.ssl)) @@ -210,7 +211,10 @@ lws_tls_client_connect(struct lws *wsi, char *errbuf, size_t elen) if (!n) /* we don't know what he wants, but he says to retry */ return LWS_SSL_CAPABLE_MORE_SERVICE; - lws_snprintf(errbuf, elen, "mbedtls connect %d %d %d", n, m, errno); + if (m == SSL_ERROR_SYSCALL && !en) + return LWS_SSL_CAPABLE_MORE_SERVICE; + + lws_snprintf(errbuf, elen, "mbedtls connect %d %d %d", n, m, en); return LWS_SSL_CAPABLE_ERROR; } diff --git a/minimal-examples/dbus-client/minimal-dbus-client/CMakeLists.txt b/minimal-examples/dbus-client/minimal-dbus-client/CMakeLists.txt index 194a28107..6496e17c0 100644 --- a/minimal-examples/dbus-client/minimal-dbus-client/CMakeLists.txt +++ b/minimal-examples/dbus-client/minimal-dbus-client/CMakeLists.txt @@ -23,7 +23,9 @@ if (NOT MSVC AND NOT WIN32 AND requirements) list(APPEND LWS_DBUS_LIB "${PC_DBUS1_LIBRARIES};dl") endif() - include_directories("${LWS_DBUS_INCLUDE1}") + if (LWS_DBUS_INCLUDE1) + include_directories("${LWS_DBUS_INCLUDE1}") + endif() if (websockets_shared) target_link_libraries(${SAMP} websockets_shared ${LIBWEBSOCKETS_DEP_LIBS}) diff --git a/minimal-examples/dbus-client/minimal-dbus-ws-proxy-testclient/CMakeLists.txt b/minimal-examples/dbus-client/minimal-dbus-ws-proxy-testclient/CMakeLists.txt index 20d7015c3..5c6939828 100644 --- a/minimal-examples/dbus-client/minimal-dbus-ws-proxy-testclient/CMakeLists.txt +++ b/minimal-examples/dbus-client/minimal-dbus-ws-proxy-testclient/CMakeLists.txt @@ -20,7 +20,9 @@ if (NOT MSVC AND NOT WIN32 AND requirements) list(APPEND LWS_DBUS_LIB "${PC_DBUS1_LIBRARIES};dl") endif() - include_directories("${LWS_DBUS_INCLUDE1}") + if (LWS_DBUS_INCLUDE1) + include_directories("${LWS_DBUS_INCLUDE1}") + endif() message("project ${PROJECT_NAME}") if (websockets_shared) target_link_libraries(${PROJECT_NAME} websockets_shared ${LIBWEBSOCKETS_DEP_LIBS}) diff --git a/minimal-examples/dbus-server/minimal-dbus-server/CMakeLists.txt b/minimal-examples/dbus-server/minimal-dbus-server/CMakeLists.txt index a70517750..0c0b7cf17 100644 --- a/minimal-examples/dbus-server/minimal-dbus-server/CMakeLists.txt +++ b/minimal-examples/dbus-server/minimal-dbus-server/CMakeLists.txt @@ -23,7 +23,9 @@ if (NOT MSVC AND NOT WIN32 AND requirements) list(APPEND LWS_DBUS_LIB "${PC_DBUS1_LIBRARIES};dl") endif() - include_directories("${LWS_DBUS_INCLUDE1}") + if (LWS_DBUS_INCLUDE1) + include_directories("${LWS_DBUS_INCLUDE1}") + endif() if (websockets_shared) target_link_libraries(${SAMP} websockets_shared ${LIBWEBSOCKETS_DEP_LIBS}) diff --git a/minimal-examples/dbus-server/minimal-dbus-ws-proxy/CMakeLists.txt b/minimal-examples/dbus-server/minimal-dbus-ws-proxy/CMakeLists.txt index 2b1ef7747..cd699a2d6 100644 --- a/minimal-examples/dbus-server/minimal-dbus-ws-proxy/CMakeLists.txt +++ b/minimal-examples/dbus-server/minimal-dbus-ws-proxy/CMakeLists.txt @@ -25,7 +25,9 @@ if (NOT MSVC AND NOT WIN32 AND requirements) list(APPEND LWS_DBUS_LIB "${PC_DBUS1_LIBRARIES};dl") endif() - include_directories("${LWS_DBUS_INCLUDE1}") + if (LWS_DBUS_INCLUDE1) + include_directories("${LWS_DBUS_INCLUDE1}") + endif() if (websockets_shared) target_link_libraries(${SAMP} websockets_shared ${LIBWEBSOCKETS_DEP_LIBS})