1
0
Fork 0
mirror of https://github.com/warmcat/libwebsockets.git synced 2025-03-23 00:00:06 +01:00
Commit graph

2060 commits

Author SHA1 Message Date
Andy Green
ad5dbda120 access log: only produce when vh log file set 2018-03-11 18:07:16 +08:00
Andy Green
862ab64d62 vhost: handle creation failure without unbalanced call of PROTOCOL_DESTROY 2018-03-11 18:07:16 +08:00
Andy Green
dc15a77dfa openssl: avoid warning on versions with ECDH header 2018-03-11 18:07:16 +08:00
Andy Green
cb70b6e633 win32: remove snprintf mangling
Everything in lws outside esp32 was changed to use lws_snprintf() a while ago.

This fixes a couple of stragglers and removes the preprocessor mangling.
2018-03-09 08:49:59 +08:00
Andy Green
7f830195d6 docs: add note on lws_http_client_http_response about when to call it
https://github.com/warmcat/libwebsockets/issues/1202
2018-03-09 08:38:48 +08:00
Joe Littlejohn
e333d1a751 Add 'HS: ws upgrade unauthorized' on receiving 401
In the case that the connection cannot be established because the caller
is unauthorized, it's likely they have to do something to gain
authorization before retrying. This change introduces a new message that
can be checked for to understand more about why the connection has
failed to establish.

Closes #1200
2018-03-08 09:02:53 +08:00
Joe Littlejohn
f1ad1c6b1a Check status before checking for Sec-WebSocket-Accept
If the server rejects the attempt to establish a connection by returning
a response status other than 101, then it will not include the
Sec-WebSocket-Accept header. We need to check for 101 status (and return
an appropriate error message) before looking for the accept header.

See #1200
2018-03-08 09:02:53 +08:00
Andy Green
b490079b47 vhost: add 404 handler url option
This allows you to set a 404 handler URL on a vhost.

The necessary user code looks like...

    info.error_document_404 = "/404.html";

... at vhost-creation time.

In the existing lws_return_http_status() api, if it sees
the vhost has an "error_document_404" path set and that
we are trying to report a 404, it changes the action
instead to a redirect to the error_document_404 path.

The redirect target is returned using 404 status code.

If the redirect target doesn't exist, then it falls back
to just reporting the simple canned 404.
2018-03-08 09:01:14 +08:00
Andy Green
1aed8c8127 h1: header parsing optimizations 2018-03-07 18:19:10 +08:00
Andy Green
388c0677ee minimal-examples: add ws pmd example 2018-03-06 09:39:27 +08:00
Andy Green
4d36bc1f46 smp: include pthreads with LWS_MAX_SMP gt 1 2018-03-06 06:37:56 +08:00
Andy Green
0d5ca2d87b pthreads: more locking 2018-03-05 16:49:28 +08:00
Andy Green
cce9711653 minimal-examples: http server 2018-03-04 16:56:40 +08:00
Andy Green
d39ecd814a smp: fixes 2018-03-02 19:19:36 +08:00
Andy Green
2203a5f019 smp: vhost lock 2018-03-02 19:19:35 +08:00
Andy Green
0d8b11d250 smp: add user pthread helpers that are NOP for LWS_SMP_MAX == 1 2018-03-02 19:19:35 +08:00
Andy Green
658b86ed9f esp32: fix basic auth 2018-03-01 10:27:12 +08:00
Andy Green
7bc6383759 LWS_SERVER_OPTION_ALLOW_NON_SSL_ON_SSL_PORT: fixes after tls refactor
https://github.com/warmcat/libwebsockets/issues/1191
2018-02-27 07:48:25 +08:00
Andy Green
e02a999863 client: stop stash leak on error path
https://github.com/warmcat/libwebsockets/issues/1187
2018-02-26 08:35:50 +08:00
Andy Green
a0581a926b esp32: map basic auth to nvs 2018-02-24 08:14:17 +08:00
Martin Milata
27115c3258 Subject: [PATCH] do not pass AI_CANONNAME to getaddrinfo()
In some cases this flag causes libc to do reverse DNS lookup the result
of which is not used.
2018-02-23 07:49:05 +08:00
Andy Green
714ba5c9df async POLLOUT: pollfd change during end of POLLOUT handling change to explicit event reenable
On ESP32 where the timer is on a different thread, otherwise
threw occasional back-to-back writes.
2018-02-20 12:07:10 +08:00
Andy Green
faef0b047f h2: clear back-to-back detection when looping through h2 child POLLOUT
The do {} while() checks each time for choked on the parent connection.
2018-02-20 07:19:38 +08:00
Andy Green
ff2f5f601d libev: libevent conflicts at buildtime 2018-02-19 10:42:31 +08:00
Andy Green
73b0147b40 libev: move accept into vh 2018-02-19 10:19:40 +08:00
Andy Green
640620dbdc mbedtls: adapt to deprecated api in 2.7 2018-02-19 06:24:30 +08:00
Andy Green
67db15a84a h2: POST: restrict block handling to end of frame 2018-02-19 05:31:14 +08:00
Andy Green
99154ae223 mbedtls: dont build lws_get_ssl 2018-02-13 10:29:49 +08:00
Andy Green
afafc135cd h2: move window mangament into DATA body handling 2018-02-06 09:58:48 +08:00
Andy Green
4e9d13bf50 openssl: defeat spin on failed accept 2018-02-06 07:58:13 +08:00
Andy Green
34255ff54e h2: explicit credit on connect 2018-02-05 10:54:18 +08:00
Andy Green
5c00887054 h2: bump window for network stream too 2018-02-04 08:34:45 +08:00
Andy Green
d6de3de732 h2: fix warning on window update check 2018-02-03 15:04:02 +08:00
Andy Green
113d623957 internal close api: add caller id 2018-02-03 13:54:29 +08:00
Andy Green
0c55e5ad4c h2: extend network stream timeout during body processing 2018-02-03 13:53:45 +08:00
Andy Green
6072829df6 h2: scale rx window according to frame size 2018-02-03 13:52:17 +08:00
Andy Green
33d373c300 esp32: defeat scan during upload 2018-02-03 13:49:49 +08:00
Andy Green
9556ad77fb esp32: bump ssid and pw fields to 64 2018-02-02 08:09:08 +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
65a67d72f1 esp32: adapt to esp-idf mdns changes 2018-01-29 15:17:33 +08:00
Andy Green
1b43ed1cba mbedtls wrapper: check for malloc.h before using
https://github.com/warmcat/libwebsockets/issues/1163
2018-01-26 07:22:35 +08:00
Andy Green
a8a484eb53 back-to-back: clear pending flag for all variants of server write 2018-01-25 09:00:08 +08:00
Andy Green
bd3d8d9de0 close: add LWSS_WAITING_TO_SEND_CLOSE_NOTIFICATION allowed to send
https://github.com/warmcat/libwebsockets/issues/1159
2018-01-23 07:01:21 +08:00
Sungtae Kim
93f904f601 libevent: fix memory leak
- Added event free function for accept.
2018-01-17 09:23:37 +08:00
Andy Green
a3bbb0a374 interpreter: support unchunked mode when h2 connection 2018-01-14 20:09:41 +08:00
Andy Green
673e3aa549 attack.sh fixes 2018-01-14 11:32:45 +08:00
Andy Green
93bc409ca1 POST: handle http/1 pipelined after body
Re-use wsi->preamble_rx to also hold leftover rx after dealing with POST
body.  Ensure ah->rx is always big enough to cope with what may have
been read into the pt->serv_buf.

Update the check for forced needed to also accept non-NULL wsi->preamble
as well as ah->rxpos != ah->rxlen as indication forced needed.

Disable autoservice on ah reset during transaction completed... it may
close the wsi underneath us when it sees and processes the pending
wsi->preamble_rx recursively otherwise.
2018-01-14 10:25:43 +08:00
Andy Green
0e24969f53 more_rx_waiting: replace by check ah rxpos rxlen and wsi preamble_rx
No need to hold the state when we can check it directly
2018-01-14 10:24:56 +08:00
Andy Green
5a1f0b7c4f excessive ah hold: explicitly detach ah 2018-01-13 05:14:43 +08:00
Andy Green
b13bff84fa h2: avoid problems with ffox by setting max hpack size to 65536 2018-01-12 10:19:46 +08:00