1
0
Fork 0
mirror of https://github.com/warmcat/libwebsockets.git synced 2025-03-30 00:00:16 +01:00
libwebsockets/lib
Andy Green d8ccfc2370 lws_system: helpers for attaching to existing event loop from other threads
In the case code is composed into a single process, but it isn't monolithic in the
sense it's made up of modular "applications" that are written separate projects,
provide a way for the "applications" to request a callback from the lws event loop
thread context safely.

From the callback the applications can set up their operations on the lws event
loop and drop their own thread.

Since it requires system-specific locking to be threadsafe, provide a non-threadsafe
helper and then indirect the actual usage through a user-defined lws_system ops
function pointer that wraps the unsafe api with the system locking to make it safe.
2020-01-05 22:17:58 +00:00
..
abstract format strings: ban %.*s as some platforms lack it 2019-11-04 13:49:14 +00:00
core lws_system: helpers for attaching to existing event loop from other threads 2020-01-05 22:17:58 +00:00
core-net lws_system: helpers for attaching to existing event loop from other threads 2020-01-05 22:17:58 +00:00
event-libs unix: sul schedule rename internal api and call regardless of existing timeout 2019-11-01 07:07:33 +00:00
jose format strings: ban %.*s as some platforms lack it 2019-11-04 13:49:14 +00:00
misc _GNU_SOURCE: only define if not already defined 2019-12-22 18:17:45 +00:00
plat h2: LCCSCF_H2_MANUAL_RXFLOW and refactor txcr 2020-01-02 08:31:02 +00:00
roles h2: LCCSCF_H2_MANUAL_RXFLOW and refactor txcr 2020-01-02 08:31:02 +00:00
system lws_system: helpers for attaching to existing event loop from other threads 2020-01-05 22:17:58 +00:00
tls openssl: handle negotiation errors handling in client 2019-12-19 21:30:09 +00:00
README.md JOSE: refactor and prepare for JWE 2018-12-27 06:45:31 +08:00

Library sources layout

Code that goes in the libwebsockets library itself lives down ./lib

Path Sources
lib/core Core lws code related to generic fd and wsi servicing and management
lib/event-libs Code containing optional event-lib specific adaptations
lib/jose JOSE / JWS / JWK / JWE implementations
lib/misc Code for various mostly optional miscellaneous features
lib/plat Platform-specific adaptation code
lib/roles Code for specific optional wsi roles, eg, http/1, h2, ws, raw, etc
lib/tls Code supporting the various TLS libraries
libwebsockets.h Public API header for the whole of lws