Commit Graph

4685 Commits

Author SHA1 Message Date
p-luke e4be3317ee netlink: when binding the per-context socket, let the kernel choose the unicast address.
When using multiple client contextes in a single application, rops_pt_init_destroy_netlink() fails binding the second socket and on - only the first one succeeds. The failure is made obvious by this log:
  W: rops_pt_init_destroy_netlink: netlink bind failed

So, let's fix this by doing what netlink(7) man page suggests:
  If the application sets nl_pid before calling bind(2), then it is up to the
  application to make sure that nl_pid is unique. If the application sets it
  to 0, the kernel takes care of assigning it. The kernel assigns the process
  ID to the first netlink socket the process opens and assigns a unique nl_pid
  to every netlink socket that the process subsequently creates.
2024-03-20 07:29:11 +00:00
makejian 0d76f0950a mbedtls_wrapper: Modify 'd2i_X509' with standard declaration in openssl
https://github.com/warmcat/libwebsockets/pull/3095

Signed-off-by: makejian <makejian@xiaomi.com>
2024-03-18 12:50:30 +00:00
c-jimenez c57c239368 basic-auth: allow NUL in password
https://github.com/warmcat/libwebsockets/issues/3092
2024-03-11 07:54:39 +00:00
Liu DongMiao 992f40c7a1 raw-skt: don't read more than rx_buffer_size
When other roles like ws reading data, they follow `rx_buffer_size`, then fallback to context's `pt_serv_buf_size`.
However, `raw-skt` don't follow `rx_buffer_size`, always use 0, then fallback to `pt_serv_buf_size`.

This PR make `raw-skt` don't read more than `rx_buffer_size` data.
2024-03-07 09:49:46 +00:00
Liu Dongmiao e38e85e71f wolfssl: fix build 2024-03-07 09:49:41 +00:00
Liu DongMiao 29c0b56582 raw: connect callback can be triggered twice 2024-03-07 09:49:21 +00:00
Lio DongMiao 299b091ad4 context: fall back if no build-time mbedtls version 2024-03-07 09:49:11 +00:00
Patrick Johnston a8cb52408d genaes: fix lws_genaes_create comment 2024-03-06 13:09:17 +00:00
Carl Walsh 779915a2e9 Create SECURITY.md
SECURITY.md shows up as a top menu bar item in GitHub's browser UI.

Moved and updated contents of https://libwebsockets.org/lws-api-doc-main/html/md_READMEs_README_vulnerability_reporting.html
2024-03-05 06:47:53 +00:00
Liu Dongmiao fe9a2b86ab ws: allow reserved bits and opcode
should close #3076
2024-03-01 08:15:08 +00:00
Vladislavs Burakovs a724300d26 wol: fix socket return for windows 2024-03-01 08:11:11 +00:00
Andy Green b71a6621b0 h2: file upload: avoid feeling too much POST
https://github.com/warmcat/libwebsockets/issues/3070
2024-02-17 12:34:14 +00:00
AD001\z0048zxj 4f3ce6458b openssl: support SSLKEYLOGFILE server secret logging 2024-02-16 15:45:45 +00:00
Andy Green 378ad62adf digest: only if we have tls lib to do hashing 2024-02-16 15:45:45 +00:00
Andy Green 1239a2b121 http-digest: coverity: dead code 2024-01-17 08:54:51 +00:00
Andy Green 36ff3b8d73 tls: if no ssl then skip ss-blob example 2024-01-16 07:33:40 +00:00
Andy Green 837db622eb clean: avoid maybe-uninitialized
https://github.com/warmcat/libwebsockets/issues/3049
2024-01-16 07:15:30 +00:00
Dustin Lundquist 9393dd3934 ev: remove any watchers on close 2024-01-15 09:29:29 +00:00
Andy Green c57733cb00 systemd-sockact: set port to 0 on unix domain 2024-01-15 09:18:48 +00:00
Andy Green 638558a4db openssl: only use pc libs if no find_package 2024-01-15 09:18:48 +00:00
Andy Green 49bfef2ecd wol: portability
https://github.com/warmcat/libwebsockets/issues/3048
2024-01-13 08:53:55 +00:00
markmaker 43df4901ee vhost: server: Ignore a vhost port mismatch when using CONTEXT_PORT_NO_LISTEN_SERVER
https://github.com/warmcat/libwebsockets/issues/3044
2024-01-08 14:40:46 +00:00
DomB f88792df37 lecp: fix format_scan function for numeric longer than 2 digits and negative numbers 2024-01-08 08:25:59 +00:00
Ogre Transporter 50ba61082d windows: clean quirks
https://github.com/warmcat/libwebsockets/issues/3039
2024-01-05 05:50:57 +00:00
Andy Green cc58c44aee systemd: add socket activation example 2024-01-04 11:41:27 +00:00
Andy Green 3207da067e vhost: allow fd adoption 2024-01-04 11:35:01 +00:00
level 6 41d7306eb4 test-server-extpoll: remove LWS_WITH_EXTERNAL_POLL redefine 2024-01-02 07:15:22 +00:00
Fabrice Fontaine f18fc2316f lib/tls/CMakeLists.txt: fix wolfssl build with pkg-config 2023-12-27 06:36:59 +00:00
stropee 22808f049c http: fix auth digest 2023-12-27 06:34:09 +00:00
stropee a33770ab87 tokenize: max token length to 256 2023-12-27 06:34:08 +00:00
Andy Green 7efab5f905 h1: reset pipelined parsing 2023-12-27 06:34:03 +00:00
Andy Green 93ae4cb628 ipv6: avoid spinning on interface set
https://github.com/warmcat/libwebsockets/issues/3028
2023-12-14 05:58:15 +00:00
Andy Green 52a6ab357e context info: add default_loglevel
Allow this kind of pattern for context creation info preparation

        struct lws_context_creation_info info;

        lws_context_info_defaults(&info, policy);
        info.default_loglevel = LLL_USER | LLL_ERR | LLL_WARN;
        lws_cmdline_option_handle_builtin(argc, argv, &info);

Calling lws_context_info_defaults() zeros down and prepares boilerplate in
the info struct, setting the default_loglevel asserts your application
default for the loglevel and then lws_cmdline_option_handle_builtin() will
set either that default loglevel, or override it from the commandline with
-d 1039 etc
2023-12-14 05:53:21 +00:00
Andy Green 957503436e http: mounts: LWSMPRO_NO_MOUNT
Provide a way to apply exception mount urls that exist on top of a larger
mount, but provide an exception which enforces the url to not be serviced
by the mount code, but by whatever dynamic handler is in place.
2023-12-12 05:57:38 +00:00
Andy Green 5e43b7039c ss: server: adopt 2023-12-10 09:18:52 +00:00
Andy Green 56d07ec06c ss: support raw file 2023-12-10 09:16:13 +00:00
Andy Green 44d9bc08f5 ss: lws_ss_get_vhost 2023-12-09 07:59:04 +00:00
=?UTF-8?q?Gae=CC=88tan=20de=20Ville=CC=80le?= cfa9d88e07 cmake: fix build for iOS with CMake 3.28 2023-12-08 13:23:06 +00:00
Andy Green 41eed87c79 cmake: upgrade everyone to 3.5 minimum version 2023-12-08 13:23:04 +00:00
Ilya Smelykh fdfde2ce0b http: auth digest 2023-12-08 10:25:50 +00:00
Andy Green 42cb5ffbbe ss: server: allow back-back TXN 2023-12-08 07:25:12 +00:00
Andy Green dab8e1c4f8 mac length: switch to ETHER_ADDR_LEN
Long story, there's also minimal example to take care of.

This change should take care of anything with ETHER_ADDR_LEN in
net/ethernet.h plus windows, for both the lib and example.
2023-12-07 05:31:25 +00:00
Philippe Ombredanne b391e1141a License: Fix typo in MIT text in fsmount.c
Somehow, a string replacement of ns by fsm had damaged
the license text and introduced garbage.

Signed-off-by: Philippe Ombredanne <pombredanne@nexb.com>
2023-11-27 09:44:13 +00:00
Lonny Wong 8d4079884b pmd: revert #3014 and drain extensions before next ssl read 2023-11-24 05:51:46 +00:00
Yurii Nakonechnyi cd6ce19525 Subject: sul: Update README.lws_sul.md
Described `lws_container_of(...)` usage, added note about `lws_sorted_usec_list_t` zeroing.
2023-11-24 05:48:24 +00:00
Andy Green 4af988600f net: lws_wol() and lws_parse_mac()
Introduce a LWS_WITH_WOL and an api to wake a mac address, optionally with
an address bind to the local interface to go out on.

Add a helper to parse ascii mac addresses well, and add tests.

Also thanks to OgreTransporter
https://github.com/warmcat/libwebsockets/issues/3016
2023-11-24 05:44:42 +00:00
Andy Green 24c37d1ea1 h2: reply with selected extension 2023-11-23 09:45:12 +00:00
Luka Kudra 8eb89bafb1 mbedtls: dont rely on potentially missing version api
https://github.com/warmcat/libwebsockets/issues/3013
2023-11-23 09:45:12 +00:00
Lonny Wong 57d539ef51 pmd: fix buffer being reused while draining extensions 2023-11-23 09:45:12 +00:00
zzblydia 5442cf7ebf cmake: ssl lib paths
replace PC_OPENSSL_LIBRARIES with PC_OPENSSL_LINK_LIBRARIES to link library with absolute path.
2023-11-23 09:45:12 +00:00