1
0
Fork 0
mirror of https://github.com/warmcat/libwebsockets.git synced 2025-03-09 00:00:04 +01:00
Commit graph

4581 commits

Author SHA1 Message Date
Andy Green
a00703f500 unix-sockets: NOP for coverity
continue here makes no difference than using break, but continue gets us a
pointless complaint "statement continue does not have any effect" and break
does not.
2021-11-08 11:05:28 +00:00
Andy Green
39380ffbac client: connect: confirm we have a protocol
Coverity gets antsy that we were checking wsi->a.protocol for NULL earlier
then start using it... explicitly bail if it's NULL before we start using
it.
2021-11-08 11:05:28 +00:00
Andy Green
57c5a0da55 jit-trust: SAN_RFC822_NAME needs other_name union member
->san is a union, in this case we set the type to indicate we use
SAN_OTHER_NAME member, but set the unstructured_name union member, that is
smaller.

This doesn't cause any problem, since the union has space for it.  But
Coverity noticed, it is wrong, so fix it.
2021-11-08 11:05:28 +00:00
Andy Green
240cd55ef6 jit-trust: show coverity we handle NULL attribute source
Coverity doesn't understand that since we already handled
akid.keyIdentifier.MBEDTLS_PRIVATE(len) being zero, we don't need to
check for akid.keyIdentifier.MBEDTLS_PRIVATE(p) being NULL.

So explicitly check it, even though it is a NOP.
2021-11-08 11:05:28 +00:00
Andy Green
7882a6dc13 jit-trust: clean after failed mbedtls_x509_get_name
mbedtls_x509_get_name() does not clean up properly after itself in the case
of OOM on multi-segment name.  We have to add extra handling and cleaning.
2021-11-08 11:05:24 +00:00
PW Hu
433ad32216 docs: audit api return information
https://github.com/warmcat/libwebsockets/issues/2481
2021-11-08 10:34:18 +00:00
Andy Green
c42c2adba9 retry: handle empty retry table 2021-11-08 10:33:12 +00:00
Jakov Smolić
897eb02431 plugins: sshd: eg musl needs sys/types if available
https://github.com/warmcat/libwebsockets/issues/2477
2021-11-04 07:16:18 +00:00
Hannes Achleitner
972f154a62 examples-lowlevel: ws client: add -n to README table 2021-11-02 07:25:24 +00:00
Andy Green
0c8dbadc1f examples-lowlevel: ws-server: pvo for WITH_PLUGINS 2021-11-02 07:25:05 +00:00
Andy Green
4935fe9e1e openssl: remove lws_ssl_get_error_string as cruft
It's not exported, it seems nothing wants it any more
2021-11-02 07:23:28 +00:00
Andy Green
c0f324fce2 esp32-c3dev: remove stray ssd1306 copy 2021-11-02 07:21:41 +00:00
Ron Frederick
7451ce5cfb server: SO_REUSEPORT: enable with LWS_MAX_SMP > 1
Either explicit option selection, or multiple SMP service threads, should
enable SO_REUSEPORT

https://github.com/warmcat/libwebsockets/issues/2470
2021-10-30 06:24:04 +01:00
Andy Green
b912958a67 cmake: bring tls include requirement out as PUBLIC
There's no problem for library build, also with LWS_WITH_MINIMAL_EXAMPLES,
but after install at least on OSX, there are problems finding the installed
lws include dir (concealed on most platforms by the path being in the
default search list for the toolchain), and the references in the lws
includes to the tls includes meaning that explicit paths for that must be
available at consuming cmakes.

This patch enhances the cmake config installed by lws to deal with adding
the lws include paths to CMAKE_REQUIRED_INCLUDES and include_directories,
so it can be found before the target is introduced.

The tls include is passed back up the CMakeLists layers and the lws targets
marked with target_include_directories(PUBLIC) with them, so they are
understood as needed by consumers.

More boilerplate is moved out of the example consuming cmakes.

After this, on machines with previous installs of older lws, you may have to
clean out the cmake install path, that is usually something like

  /usr/local/lib/cmake/libwebsockets/*

before make installing lws and putting the latest content in there.
2021-10-28 10:47:12 +01:00
Chunho Lee
b843c09dc2 mqtt: allow indicating username and password are not on heap
Fix minimal-mqtt-client and minimal-mqtt-client-multi from crashes
by allowing indicating username and password are not on heap.
2021-10-27 16:55:12 +01:00
Chunho Lee
00b7fa23d0 plat: freertos: selectively use old service looping 2021-10-26 09:55:54 +01:00
Felipe Gasper
26f5cb71e7 docs: client: Add UNIX socket connection notes for clients 2021-10-26 06:54:11 +01:00
Andy Green
1a69afaf6e raw-file: clear POLLOUT before handling 2021-10-24 16:57:40 +01:00
Jin Wang
b43f90a8ed ss: policy: adaptations for dynamic policy 2021-10-21 16:14:02 +01:00
Orefkov Aleksander
63db023f58 pugins: sshd: handle window-change request
Added processing of window-change request, according to RFC 4254 6.7
https://datatracker.ietf.org/doc/html/rfc4254#section-6.7
For processing called callback pty_req with empty terminal and modes.
2021-10-19 17:24:07 +01:00
Jin Wang
e9c92ec161 metrics: ss: skip tagging if no ss streamtypename 2021-10-19 10:51:23 +01:00
Orefkov Aleksander
6c7798eef4 plugins: sshd: channel fixes
In responses  with channel numbers, the sender's channel number is sent instead of the recipient's channel number.
See for example https://datatracker.ietf.org/doc/html/rfc4254#section-5.1
Putty uses channel 256 for session, and existing code break it with "Received SSH2_MSG_CHANNEL_OPEN_CONFIRMATION for nonexistent channel 0" error.
2021-10-19 10:50:52 +01:00
Orefkov Aleksander
957bfae5c8 plugins: sshd: mbedtls 3 extra adaptation
In fresh mbedtls rsa public decrypt is deprecated and not work on public keys.
Replaced by lws_genrsa_hash_sig_verify.
2021-10-19 10:50:43 +01:00
Orefkov Aleksander
9efc32ab49 plugins: sshd: sc25519 must handle last bit
This was originally commented because Coverity objected to it.
2021-10-19 07:29:26 +01:00
Andy Green
d77a6c397e client: connect_check fail just log once 2021-10-19 07:29:13 +01:00
Andy Green
36af266001 adns: fix label limit check 2021-10-16 09:44:37 +01:00
Andy Green
50f7bd4f6e logs: unconvert adns wsi deref after potential close 2021-10-16 08:28:22 +01:00
Andy Green
55a7c6a0f4 http: sse: check POLLIN during DOING_TRANSACTION
When the client goes away, on some platforms all we get is POLLIN revent
stuck on... we have to read it to find out a zero length result and
understand it's gone.

Add SSE mode's DOING_TRANSACTION to the list of states we will read for.
2021-10-16 05:33:56 +01:00
Andy Green
acb05eb1ca bind: use vhost log ctx since wsi optional 2021-10-16 05:33:41 +01:00
Andy Green
c95b0222a4 cmake: add inclusion of CheckIncludeFile in req 2021-10-16 05:33:33 +01:00
Andy Green
dcb115694a logs: log context: async_dns: no empty format string 2021-10-16 04:44:38 +01:00
Felipe Gasper
65faeab1bd logs: log context: async_dns
Of note: A single use of lwsl_debug() remains because the function in
question is documented as a public API, but the passed-in parameter
doesn’t offer a path to a logging context.
2021-10-15 19:10:44 +01:00
Andy Green
06bc1d8971 freertos: no need to freak out if service_adjust_to is 0
If lws_s_a_t() is zero, there's a path where n stays -1 from its
declaration and we return -1.
2021-10-15 19:10:33 +01:00
Felipe Gasper
826b221e38 client: fix nxdomain CCE 2021-10-15 14:15:12 +01:00
Felipe Gasper
ff5257e193 logs: migrate more to log context 2021-10-15 14:15:06 +01:00
Yichen Gu
9b56baca8f ss: static policy generator: fix filepath detection 2021-10-13 15:55:56 +01:00
Yichen Gu
61c2e3291f mqtt: protect printing debug only vars 2021-10-13 15:55:23 +01:00
Felipe Gasper
7fb6a450e8 logs: migrate ws extension code to contextual logging 2021-10-13 11:11:52 +01:00
Felipe Gasper
b53a09f61c logs: migrate client-parser-ws.c to contextual logging 2021-10-13 11:11:50 +01:00
Orefkov Aleksander
413ce239cd mbedtls: windows: add define to be compatible with the latest versions of mbedtls 2021-10-12 15:37:38 +01:00
Orefkov Aleksander
00b922041b mbedtls: set length even when LWS_HAVE_mbedtls_ssl_get_alpn_protocol 2021-10-12 09:46:32 +01:00
Orefkov Aleksander
c226da3e10 cmake: wrong miniz include dir + mbed link on windows 2021-10-12 09:46:28 +01:00
Andy Green
8d4526c780 smd: take message lock earlier 2021-10-12 09:46:17 +01:00
Felipe Gasper
fad2bdbeea Teach client-ws.c about log contexts. 2021-10-12 09:46:06 +01:00
Yichen Gu
3b4c9aaeb3 lecp: remove extra struct lws_lec_pctx fwd definitions
C++ compilers set to less than C11 may choke on it, it's anyway not needed
any more since no references between that and the actual definition.
2021-10-11 09:12:03 +01:00
Andy Green
361a07c8f4 minimal: esp32: wrover display: increase smd timeout to cover delays in display 2021-10-11 09:11:35 +01:00
Andy Green
df008ef6ce freertos: suppress return check on xSemaphoreTake
With the timeout set to portMAX_DELAY, there is no timeout and so no way
for the api to return failure.

https://www.freertos.org/a00122.html

However Coverity doesn't understand this, and futher, Coverity usually
ignores (void) result casts.  So add needless checks and the corresponding
needless unwinding to the 10 uses of lws_mutex_lock() in smd.c.

Invert the return value to align it with pthreads mutex lock return
semantics.
2021-10-08 09:49:58 +01:00
Pavel Otchertsov
05e9362df2 context: fix compilation error 2021-10-07 13:29:12 +01:00
caobug
a75fc1aae8 uv: handle uv_poll_init failure 2021-10-07 11:22:36 +01:00
Chunho Lee
bf5744ab07 ss-mqtt: Add support for Birth message
This provides Birth message on SS policy. The Birth message is
a message published just after the MQTT connection has been
established.
2021-10-07 11:22:21 +01:00