libwebsockets/lib
Andy Green d4820ef5db cao: Connection Attempt Object
Wrap struct lws_conmon into an lws_cao_t, and give that its own lifecycle
distinct from any wsi.

Conmon contains what we want, but it was composed into the wsi and so had
to follow its single wsi's lifecycle.

Let's give it its own lifecycle independent of the wsi it happened to be
born for, and wrap it with an lws_cao_t that can contain private things.
We can still present the lws_conmon_t unchanged to the public apis that
expect it.

Client wsi with the connection have at least one CAO, the HEAD CAO is taken
as the active one for a wsi, it may acquire other "losing" CAOs as it goes
along.

desc moves into this new CAO, it's a bit messy because only client
connections have CAOs, but server connections and listeners have desc.  So
we have a .desc in the wsi still for that, and desc in the CAO for client,
and new helpers to take care of which to use.
2022-05-16 16:49:39 +01:00
..
core cao: Connection Attempt Object 2022-05-16 16:49:39 +01:00
core-net cao: Connection Attempt Object 2022-05-16 16:49:39 +01:00
cose coverity: 2021-12-1 uplevel fixes 2022-03-15 10:28:09 +00:00
drivers lws_display: SSD1675B 2022-04-10 06:56:12 +01:00
event-libs cao: Connection Attempt Object 2022-05-16 16:49:39 +01:00
jose base64: improve sanity checking 2022-03-25 08:18:30 +00:00
misc minimal: embedded lhp examples 2022-05-04 08:43:26 +01:00
plat cao: Connection Attempt Object 2022-05-16 16:49:39 +01:00
roles cao: Connection Attempt Object 2022-05-16 16:49:39 +01:00
secure-streams cao: Connection Attempt Object 2022-05-16 16:49:39 +01:00
system cao: Connection Attempt Object 2022-05-16 16:49:39 +01:00
tls cao: Connection Attempt Object 2022-05-16 16:49:39 +01:00
CMakeLists.txt pkgconfig: use appropriate static lib name 2022-03-15 10:28:09 +00:00
README.md cleaning 2020-01-05 22:17:58 +00: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/core-net Core lws code that applies only if networking enabled
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/system Code for system-level features, eg, dhcpclient
lib/tls Code supporting the various TLS libraries