Andy Green
4c3146c27c
glibc: if malloc_trim() exists, call it periodically
2019-03-16 08:10:47 +08:00
Andy Green
119aa5c0ad
lws_dir: wrap dir scanning backend and convert lejp-conf
...
We use POSIX dir scanning apis normally, but for windows, we require libuv
to do it for us.
Formalize that into a wrapper lws_dir() that hides the backend code.
Make it configurable, ON by default and forced on with lejp-conf that
depends on it.
2019-03-14 20:06:25 +08:00
Andy Green
80ff6ed0df
lwsac_use_zeroed: lwsac helper equivalent to zalloc
2019-03-12 11:57:43 +08:00
Andy Green
6a88483f02
lejp: integrate error strings and api to core lejp
...
lejp-conf isn't the only user that needs to generate human-readable
JSON parsing error stacks.
Build it in with lejp and introduce an error code -> string api
2019-03-12 11:57:43 +08:00
Andy Green
09fe212432
bzero: replace all with memset
...
lws_explicit_bzero() is available if the goal is to have volatile zeroing.
2019-03-10 08:02:02 +08:00
Andy Green
e63b3a6348
daemonize: use pid_t
...
After report from Vitaly Shevtsov
https://libwebsockets.org/pipermail/libwebsockets/2019-January/007787.html
2019-01-23 18:06:32 +08:00
Andy Green
043700a4b0
optee: remove build system
2019-01-15 06:59:48 +08:00
Andy Green
21889b53f7
ecdh-es
...
Mainly JWE support for ecdh-es and initial refactor to support multiple
recipients / signatures.
2018-12-27 06:45:32 +08:00
Andy Green
eda102e397
jwe
2018-12-27 06:45:32 +08:00
Andy Green
a3dcc95471
genec: generic ECDH crypto layer
...
!!! WIP
This implements the "genec" layer wrapping mbedtls + openssl
ECDH support.
API tests are added for the parts that are implemented so far.
Stuff related to ec at all, like keys, are prefixed lws_genec_.
Stuff specific to ECDH are prefixed lws_genecdh_.
2018-12-27 06:45:31 +08:00
Andy Green
440dacc992
JOSE: refactor and prepare for JWE
...
Until now the JOSE pieces only had enough support for ACME.
This patch improves the JWK parsing to prepare for more
complete support and for adding JWE, genaes and genec in
later patches.
2018-12-27 06:45:31 +08:00
Andy Green
531ad7ee2b
minimal example deaddrop
2018-12-01 11:05:59 +08:00
Andy Green
30be5cb441
lwsac: unreference: allow to be called with NULL
2018-11-28 15:06:10 +08:00
Andy Green
9bed6d6fc6
clean: general whitespace cleanup
2018-11-23 08:47:56 +08:00
Andy Green
c027c3db28
docs: cleanups
2018-11-21 17:03:29 +08:00
Andy Green
ac032544bf
README.md: update in preparation for v3.1
2018-11-16 09:10:41 +08:00
Andy Green
aa4143aebd
lws_diskcache: split generic parts from gitohashi into lws
2018-11-12 15:24:42 +08:00
Andy Green
2312ee88fc
fts: clear down the path stack with memset
...
https://github.com/warmcat/libwebsockets/issues/1445
2018-11-06 07:04:12 +08:00
Andy Green
ae4b511d9a
trie: fix up gcc 8.2.1 armv7 off_t vs jg2_file_offset
...
We really don't want to use off_t in the trie struct if we can avoid it since with
alignment it adds 16 bytes per trie-entry. Cast around warnings.
2018-11-03 09:24:20 +08:00
Andy Green
d3bc2c3f4f
fulltext search
2018-10-26 13:53:28 +08:00
Andy Green
602b0934c8
fulltext search
2018-10-26 13:50:53 +08:00
Andy Green
a5b2248e72
lwsac
...
Introduce an api for efficiently dealing with allocations for
large, unknown amounts of objects.
2018-10-16 05:05:56 +08:00
Andy Green
33a6034875
codacy: minor fixes
2018-10-13 08:16:27 +08:00
Andy Green
a95a76399a
threadpool: add return flag for outlive wsi
2018-09-30 07:08:59 +08:00
Andy Green
ebed5e74cb
threadpool
2018-09-11 18:27:59 +08:00
Andy Green
253942ca80
clean: solve type conversion warnings for appveyor
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
f44e38f148
unix socket: fixes and improvements
...
Auto-remove any unix socket file already there.
Correctly identify if it's in use per-vhost.
Make the peer-limits stuff ignore it.
2018-08-14 08:00:30 +08:00
Andy Green
94e375f552
lejp: improve bogus JSON underrun detection
...
https://github.com/warmcat/libwebsockets/issues/1357
2018-08-14 08:00:30 +08:00
Andy Green
b58fb2dae3
lws_mutex_refcount
...
This creates a "pthread mutex with a reference count"
using gcc / clang atomic intrinsics + pthreads.
Both pt and context locks are moved to use this,
pt already had reference counting but it's new for
context.
2018-06-27 07:15:39 +08:00
Andy Green
f2f96857d6
fd_cloexec: add and use lws_open wrapper and lws_plat_apply_FD_CLOEXEC() on cgi
2018-06-23 12:56:21 +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
da0be64f68
minimal-raw-netcat
...
Adapt attack.sh to use it instead of OS netcat and fox various bugs that
exposed.
2018-05-02 08:46:16 +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
7c0a2ae633
smp: h2 children must go on same tsi as parent
...
We can't have a situation where stream wsis inside an h2 connection
are serviced by different threads than the actual parent connection.
2018-04-27 12:49:42 +08:00
Andy Green
5d06f610a9
travis: h2spec integration
2018-04-26 15:27:02 +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
Andy Green
a0581a926b
esp32: map basic auth to nvs
2018-02-24 08:14:17 +08:00
Andy Green
8e9871d995
remove u_int64_t
...
https://github.com/warmcat/libwebsockets/issues/1167
2018-01-30 09:28:13 +08:00
Andy Green
2e4ac9defe
lejp: fix float
...
https://libwebsockets.org/pipermail/libwebsockets/2018-January/003599.html
2018-01-04 10:28:06 +08:00
Andy Green
ad07d95026
cleanups
2017-12-01 11:37:35 +08:00
Andy Green
2b30c82b9e
lejp: dont underflow with anonymous braces
2017-11-26 19:17:11 +08:00
Andy Green
a76e9aad11
lejp: handle empty arrays
2017-11-26 19:17:11 +08:00
Andy Green
be525cb624
appveyor: Enable 64-bit build with OpenSSL and HTTP2
...
Fix warnings found from that
Introduce lws_ptr_diff(head, tail) helper to normalize
pointers to char *, do the subtraction and cast the
result to int.
2017-11-26 19:16:17 +08:00
Andy Green
dd3e5619cb
lws_genhash: add HMAC
...
Like the simple hashes, these work the same regardless of if the backend is
OpenSSL or mbedTLS.
Also move into ./lib/tls/ and split into two specific to mbedtls or openssl
backends.
2017-11-10 16:56:44 +08:00
Andy Green
aebf187b98
base64: add decode variant that uses in_len instead of NUL term
2017-11-10 16:56:44 +08:00
Andy Green
2639b276f4
base64: add URL encode variant and allow decode of it
...
The URL encode variant is the same, except + is coded as -, and / is coded as _
to avoid urlencoding when the base64 is used in situations that are urlencoded.
2017-11-10 16:56:44 +08:00
Andy Green
fac510fbc2
lws_ring: add lws_ring_dump() api
2017-11-05 07:08:20 +08:00
Andy Green
5a90bb36d1
lejp: add test app to parse stdin
2017-10-26 18:55:12 +08:00
Andy Green
f9421f084b
lejp: integrate header into libwebsockets.h
2017-10-26 18:55:11 +08:00