Andy Green
79bb26b6bd
HPACK: take sizing to 0 as clear existing
...
Apparently some peers set the HPACK size to zero and then try
to set HPACK dynamic elements. Take it to mean keep the same
size but clear it down.
2019-07-08 11:40:10 +01:00
Andy Green
986bb37c88
ah: custom headers for h1
...
Until now lws only parses headers it knows at build-time from its
prebuilt lexical analyzer.
This adds an on-by-default cmake option and a couple of apis
to also store and query "custom", ie, unknown-to-lws headers.
A minimal example is also provided.
At the moment it only works on h1, h2 support needs improvements
to the hpack implementation.
Since it bloats ah memory usage compared to without it if custom
headers are present, the related code and ah footprint can be
disabled with the cmake option LWS_WITH_CUSTOM_HEADERS, but it's
on by default normally. ESP32 platform disables it.
https://github.com/warmcat/libwebsockets/pull/1499
2019-03-10 08:02:02 +08:00
Andy Green
9bed6d6fc6
clean: general whitespace cleanup
2018-11-23 08:47:56 +08:00
Andy Green
33a6034875
codacy: minor fixes
2018-10-13 08:16:27 +08:00
Andy Green
e618ce1d4c
h2: use vhost headers with tolower adaptation
...
h2 was not applying vhost headers, make it do so.
Also adapt any header names to lower-case as required by h2.
2018-09-11 18:27:59 +08:00
Andy Green
d461f46a97
libwebsockets.h: clean out some boilerplate better put in core/private.h
...
https://github.com/warmcat/libwebsockets/issues/1370
2018-08-16 19:10:32 +08:00
Andy Green
de064fd65a
refactor: core code in lib/core and private-libwebsockets.h to core/private.h
...
This commit is coverity-clean as tested
cmake .. -DLWS_WITH_MINIMAL_EXAMPLES=1 -DLWS_WITHOUT_EXTENSIONS=1 -DLWS_WITH_ACME=1 -DLWS_WITH_LWSWS=1 -DLWS_WITH_LIBUV=1 -DLWS_WITH_HTTP2=1 -DLWS_WITHOUT_CLIENT=0 -DLWS_WITHOUT_SERVER=0 -DLWS_UNIX_SOCK=1 -DLWS_WITH_TLS=0 -DLWS_WITH_MBEDTLS=0 -DLWS_WITH_CGI=1 -DCMAKE_BUILD_TYPE=DEBUG -DLWS_WITH_GENERIC_SESSIONS=1 -DLWS_WITH_RANGES=1 -DLWS_ROLE_WS=1 -DLWS_MAX_SMP=16 -DLWS_ROLE_H1=1 -DLWS_WITH_WOLFSSL=0 -DLWS_WITH_LIBEV=0 -DLWS_WITH_LIBEVENT=1
2018-05-03 10:49:36 +08:00
Andy Green
16a907180c
refactor: move all ah and http specific vars to http private and conditional inclusion from there
2018-04-27 15:20:56 +08:00
Andy Green
5d06f610a9
travis: h2spec integration
2018-04-26 15:27:02 +08:00
Andy Green
8e9751e26e
refactor: move out extension lws members into ws and establish role structs for vhost content
2018-04-25 06:53:30 +08:00
Andy Green
126be3ccf3
refactor role ops
...
This only refactors internal architecture and representations, the user
api is unaffected.
2018-04-11 13:39:42 +08:00