Cheoleun Moon [Tue, 12 Nov 2019 15:28:44 +0000 (00:28 +0900)]
Fix to expose openssl dependency
libwebsocket-dev doesn't expose openssl dependency by its .pc files,
even if it is necessary to build properly.
this patch fix them to expose it.
Change-Id: Ic370ab8a501e83306227ff2556b08b8000263d9f
Signed-off-by: Cheoleun Moon <chleun.moon@samsung.com>
Seonah Moon [Mon, 11 Nov 2019 08:26:13 +0000 (17:26 +0900)]
Revert "Remove unnecessary openssl dependency"
This reverts commit
1dcb4e85660ddb34d13b807b9480b3510633b52f.
Change-Id: I35e0f63050a018dd6f8e783d1da544e7d2d66ec0
Seonah Moon [Mon, 11 Nov 2019 08:25:43 +0000 (17:25 +0900)]
Revert "Fix to expose openssl dependency"
This reverts commit
0424a8c94399c663af0690a7263f0464b3e77850.
Change-Id: Ic8aac38fa7d31b6f63e470ae9fcd8dffc38651f2
Wonki Kim [Thu, 22 Aug 2019 05:26:39 +0000 (14:26 +0900)]
Fix to expose openssl dependency
libwebsocket-dev doesn't expose openssl dependency by its .pc files,
even if it is necessary to build properly.
this patch fix them to expose it.
Change-Id: If4e3f3a21759b9e3b23cc26386e428cc4c7d151c
Cheoleun Moon [Thu, 4 Jul 2019 23:27:53 +0000 (08:27 +0900)]
Remove unnecessary openssl dependency
Change-Id: I8ad6ee31795eee76d74770248212724bd99da57b
Signed-off-by: Cheoleun Moon <chleun.moon@samsung.com>
Seonah Moon [Fri, 17 Aug 2018 04:29:57 +0000 (13:29 +0900)]
Enable LWS_WITH_SERVER_STATUS option
Change-Id: I29f7a3b8b37254c59fda1176ebde7f4c9112edab
Andy Green [Mon, 22 Jan 2018 23:01:21 +0000 (07:01 +0800)]
close: add LWSS_WAITING_TO_SEND_CLOSE_NOTIFICATION allowed to send
https://github.com/warmcat/libwebsockets/issues/1159
(cherry picked from commit
bd3d8d9de016b1408bee0e6717319e94dc92e048)
Conflicts:
lib/service.c
Change-Id: I298203267526fdf631a6a1660345176c5e8588b8
(cherry picked from commit
354262de94c8c3d9bdd3885ce075c3b81dd7b858)
Dmitry Kovalenko [Mon, 21 Aug 2017 09:47:15 +0000 (12:47 +0300)]
use license macro in the spec file
Change-Id: I6d9e5baae91404d0b53556306e2a04c8f130f291
Signed-off-by: Dmitry Kovalenko <d.kovalenko@samsung.com>
Dmitry Kovalenko [Mon, 21 Aug 2017 09:45:16 +0000 (12:45 +0300)]
Add packaging code and LICENSE
Change-Id: I2604b16b08890720673e5042605ddff410d2100a
Signed-off-by: Dmitry Kovalenko <d.kovalenko@samsung.com>
Dmitry Kovalenko [Mon, 21 Aug 2017 09:33:11 +0000 (12:33 +0300)]
Remove win32port
Change-Id: I6c3e8510e10ab6245998eca5e430b6c6bf4e2911
Signed-off-by: Dmitry Kovalenko <d.kovalenko@samsung.com>
Cory McWilliams [Wed, 16 Aug 2017 20:03:12 +0000 (16:03 -0400)]
Subject: Mismatched lws_zalloc / free
Andy Green [Wed, 16 Aug 2017 07:22:33 +0000 (15:22 +0800)]
docs: swap _all_protocol_vhost cut and paste
https://github.com/warmcat/libwebsockets/issues/989
Andy Green [Tue, 15 Aug 2017 00:05:56 +0000 (08:05 +0800)]
ah: reuse at end of transaction has no timeout
If we complete a transaction but end up keeping the ah, we must force
a timeout on it. Otherwise a bad bot could keep the socket open and
exhaust the ah pool.
lnmx [Sat, 12 Aug 2017 12:53:58 +0000 (20:53 +0800)]
send content-type when LWS_WITH_RANGES=OFF
https://github.com/warmcat/libwebsockets/pull/987
With the RANGES feature disabled, lws_serve_http_file would
not add the content-type header to the response.
Andy Green [Sat, 12 Aug 2017 12:53:49 +0000 (20:53 +0800)]
handle same vh protocol reinsert
Andy Green [Tue, 8 Aug 2017 23:43:37 +0000 (07:43 +0800)]
lwsws: remove no longer extant D option from help string
https://github.com/warmcat/libwebsockets/issues/986
Andy Green [Fri, 4 Aug 2017 05:29:20 +0000 (13:29 +0800)]
ping test app: avoid FPE when no packets received
Andy Green [Fri, 4 Aug 2017 05:27:34 +0000 (13:27 +0800)]
close path: make sure a second time timeout and ssl buffered lists are scrubbed
lws_meta children can have a different close path
Andy Green [Fri, 28 Jul 2017 06:13:42 +0000 (14:13 +0800)]
v2.3.0
Andy Green [Fri, 28 Jul 2017 06:20:42 +0000 (14:20 +0800)]
coverity 182069: coverity confused by use of bool as array index
Andy Green [Fri, 28 Jul 2017 06:19:24 +0000 (14:19 +0800)]
coverity 182068: 155650: unnecessary check against illegal NULL
Andy Green [Fri, 28 Jul 2017 05:12:03 +0000 (13:12 +0800)]
pmd: autobahn fixes
Andy Green [Thu, 27 Jul 2017 23:03:17 +0000 (07:03 +0800)]
attack.sh: adapt to changes
Andy Green [Thu, 27 Jul 2017 23:04:47 +0000 (07:04 +0800)]
log: downgrade logging for ah wait
Andy Green [Thu, 27 Jul 2017 23:03:57 +0000 (07:03 +0800)]
correct status payload size
Andy Green [Thu, 27 Jul 2017 00:27:34 +0000 (08:27 +0800)]
lws_meta: explicitly declare all of lws_protocols members for ESP32
Andy Green [Wed, 26 Jul 2017 23:57:59 +0000 (07:57 +0800)]
libevent: update to use static plugins and work with new libevent2
Plus fix broken indent style
Andy Green [Wed, 26 Jul 2017 23:29:56 +0000 (07:29 +0800)]
test-server-libuv: add lws_meta
Andy Green [Wed, 26 Jul 2017 23:26:00 +0000 (07:26 +0800)]
dummy handler: LWS_CALLBACK_HTTP_FILE_COMPLETION
Andy Green [Wed, 26 Jul 2017 03:49:41 +0000 (11:49 +0800)]
ah: allow configurable ah hold timeout
Andy Green [Tue, 25 Jul 2017 09:36:31 +0000 (17:36 +0800)]
http2: remove cmake option leave code in for now
https://github.com/warmcat/libwebsockets/issues/979
namowen [Tue, 25 Jul 2017 09:14:37 +0000 (17:14 +0800)]
client: ipv6 reject when lws_getaddrinfo46 failed
https://github.com/warmcat/libwebsockets/issues/978
Andy Green [Fri, 21 Jul 2017 13:49:24 +0000 (21:49 +0800)]
client-fix-header-stash-leak-on-close-before-success
Andy Green [Fri, 21 Jul 2017 12:58:51 +0000 (20:58 +0800)]
client: fix hdr stash leak
Andy Green [Fri, 21 Jul 2017 12:35:58 +0000 (20:35 +0800)]
client: always set port even if sockfd already created
Andy Green [Fri, 21 Jul 2017 12:25:32 +0000 (20:25 +0800)]
client: fix redirect ssl to ssl
Andy Green [Fri, 21 Jul 2017 12:04:02 +0000 (20:04 +0800)]
url cleaning: leave // after http[s]: alone
Andy Green [Fri, 21 Jul 2017 11:25:41 +0000 (19:25 +0800)]
lws_intptr_t: fix ordering
https://github.com/warmcat/libwebsockets/issues/973
Andy Green [Fri, 21 Jul 2017 03:09:03 +0000 (11:09 +0800)]
test-server-libuv: also call context_destroy2 when using foreign loop
https://github.com/warmcat/libwebsockets/issues/972
Andy Green [Wed, 19 Jul 2017 07:29:38 +0000 (15:29 +0800)]
appveyor: remove cache
Andy Green [Wed, 19 Jul 2017 06:47:30 +0000 (14:47 +0800)]
coverity-181580: supposedly dead code
Andy Green [Wed, 19 Jul 2017 06:28:53 +0000 (14:28 +0800)]
coverity 181577: lejp_conf loop on calling uv_loop_close to keep coverity happy
Andy Green [Wed, 19 Jul 2017 06:27:13 +0000 (14:27 +0800)]
coverity 181573: false positive since lws_is_ssl returns a bool
Andy Green [Wed, 19 Jul 2017 06:25:42 +0000 (14:25 +0800)]
coverity 181576: remove dead code to keep coverity happy
Andy Green [Wed, 19 Jul 2017 06:19:03 +0000 (14:19 +0800)]
coverity 181574: confirm uri_ptr non-null before deref
Andy Green [Wed, 19 Jul 2017 06:17:39 +0000 (14:17 +0800)]
coverity 181579: check result of malloc as intended
Andy Green [Wed, 19 Jul 2017 06:16:32 +0000 (14:16 +0800)]
coverity 181575: check vhost iface non-null if using via bind_iface
Andy Green [Tue, 18 Jul 2017 20:39:14 +0000 (04:39 +0800)]
lws-meta
Andy Green [Mon, 17 Jul 2017 02:11:17 +0000 (10:11 +0800)]
close: make close notification go through writable
Until now we took the approach if just writing the close notification
broke something, we didn't care because we were closing the connection
anyway.
But with lws_meta, breaking stuff in the parent connection would be a
sticky problem outliving the closing child connection.
So this adds a new wsi state LWSS_WAITING_TO_SEND_CLOSE_NOTIFICATION
and makes the send go via the writable callback mechanism.
Andy Green [Sat, 15 Jul 2017 06:37:04 +0000 (14:37 +0800)]
lws-vhost-destroy
Adds a new api lws_vhost_destroy(struct lws_vhost *) which allows dynamic removal of vhosts.
The external api calls two parts of internal helpers that get reused for context destroy.
The second part is called deferred by 5s... this is to ensure that event library objects
composed into structs owned by the vhost all have a chance to complete their close
asynchronously. That should happen immediately, but it requires us to return to the
event loop first.
The vhost being removed is deleted from the context vhost list by the first part, and does
not block further removals or creation during the delay for the deferred freeing of the
vhost memory.
Part 1:
- if the vhost owned a listen socket needed by other vhosts listening on same iface + port, the listen
socket is first handed off to another vhost so it stays alive
- all wsi still open on the vhost are forcibly closed (including any listen socket still attached)
- inform all active protocols on the vhost they should destroy themselves
- remove vhost from context vhost list (can no longer be found by incoming connections)
- add to a "being destroyed" context list and schedule the second part to be called in 5s
Part 2:
- remove us from the being destroyed list
- free all allocations owned by the vhost
- zero down the vhost and free the vhost itself
In libwebsockets-test-server, you can send it a SIGUSR1 to have it toggle the creation and destruction of
a second vhost on port + 1.
Andy Green [Sat, 15 Jul 2017 11:02:04 +0000 (19:02 +0800)]
clean: fixes for appveyor warnings
Andy Green [Tue, 18 Jul 2017 20:06:15 +0000 (04:06 +0800)]
ah: enforce waiting list detach
Andy Green [Sat, 15 Jul 2017 09:57:14 +0000 (17:57 +0800)]
valgrind: avoid complaints from plugin loading
Andy Green [Tue, 18 Jul 2017 03:15:43 +0000 (11:15 +0800)]
explicit vhosts: only check context for flag
Although the test apps reuse the context info directly and so inherit the
flag state there when creating vhosts, users might generate a fresh info
without the flag for vhost creation. So just go by what was given at
context creation time.
Jesse Engle [Mon, 17 Jul 2017 04:16:00 +0000 (04:16 +0000)]
Subject: Eliminated 'unused variable' compiler warning generated with -DLWS_WITH_NO_LOGS=ON.
The unused variable was only declared for use in a log macro that's
compiled out with the above compiler switch. I removed the declaration
and casted the variable at each use in the block.
AG: convert to void case reference irrespective of logging enabled.
AG: travis.yml: add -DLWS_WITH_NO_LOGS=ON that also enables lwsws + cgi code
Andy Green [Sat, 15 Jul 2017 09:51:32 +0000 (17:51 +0800)]
valgrind: stop openssl still reachable complaints
Andy Green [Sat, 15 Jul 2017 09:50:24 +0000 (17:50 +0800)]
valgrind: fix leak in caps handling
Andy Green [Sat, 15 Jul 2017 09:48:37 +0000 (17:48 +0800)]
libuv: add helper for clean valgrind with foreign loop
Andy Green [Mon, 10 Jul 2017 10:52:27 +0000 (18:52 +0800)]
esp32: increase dir depth for include bodge
Andy Green [Mon, 10 Jul 2017 02:03:31 +0000 (10:03 +0800)]
test-html: unify ws open function
Andy Green [Sun, 9 Jul 2017 02:11:59 +0000 (10:11 +0800)]
linkedlist helpers
Andy Green [Sat, 8 Jul 2017 07:58:40 +0000 (15:58 +0800)]
mirror: multiple mirror contexts by mirror= url arg
By default mirror acts the same as before.
However if you access the test server with a url containing "?mirror=<name>", the session will bind to
a mirror instance private to "?mirror=<name>". Only sessions that used the same 'mirror=' name can
share the drawings, mirror instances with a different name (including the default "" name) are unaffected.
Andy Green [Sat, 8 Jul 2017 08:02:18 +0000 (16:02 +0800)]
test server: only init ssl when --ssl in use
Andy Green [Sat, 8 Jul 2017 08:01:34 +0000 (16:01 +0800)]
client: reject init_client_ssl more than once
Andy Green [Fri, 7 Jul 2017 00:32:04 +0000 (08:32 +0800)]
lws_intptr_t
Andy Green [Thu, 29 Jun 2017 03:26:22 +0000 (11:26 +0800)]
lws_return_http_status: if not in HTTP/2, restrict to a single write
Andy Green [Thu, 29 Jun 2017 02:13:29 +0000 (10:13 +0800)]
parsing: if we ended on a set of headers and read a new buffer mark as more_rx_waiting to avoid dropping the ah
Boutoukoat [Wed, 28 Jun 2017 14:25:57 +0000 (22:25 +0800)]
client: use right state machine
https://github.com/warmcat/libwebsockets/issues/951
Andy Green [Wed, 28 Jun 2017 06:27:09 +0000 (14:27 +0800)]
file serve: defer transaction completed to HTTP_FILE_COMPLETION
Andy Green [Wed, 28 Jun 2017 04:13:13 +0000 (12:13 +0800)]
ah: require parsing complete before detach
Introduce helpers to force to detachable state and to test the ah is
in a detachable state.
Require not only the ah rx buffer is all used, but that the
wsi has completed a full set of headers.
Andy Green [Wed, 28 Jun 2017 03:35:50 +0000 (11:35 +0800)]
test-server-libev: disable Werror just on server-libev.c to workaround libev dirt
Andy Green [Wed, 28 Jun 2017 03:21:03 +0000 (11:21 +0800)]
test-server-libuv: add missing call to lws_context_destroy2()
Andy Green [Wed, 28 Jun 2017 03:16:48 +0000 (11:16 +0800)]
test servers: convert to static inclusion of plugins
This eliminates the duplicated implementations of the test protocols,
except dumb-increment (which requires libuv).
This has various advantages, including bringing all the test servers
up to the same set of protocols support.
Triggered by finding a bug in server status protocol that was long
ago fixed in the plugins version.
Andy Green [Wed, 28 Jun 2017 02:35:40 +0000 (10:35 +0800)]
test-server-status: increase tx size to avoid WRITEABLE loops
Andy Green [Wed, 28 Jun 2017 01:58:44 +0000 (09:58 +0800)]
transaction_completed: ignore if parsing not complete
Andy Green [Wed, 28 Jun 2017 01:57:15 +0000 (09:57 +0800)]
test-server-http: no need to complete transaction early since FILE_COMPLETION will do it
Andy Green [Wed, 28 Jun 2017 01:55:34 +0000 (09:55 +0800)]
ah reset: enforce reset of parsing_complete
Andy Green [Wed, 28 Jun 2017 01:52:22 +0000 (09:52 +0800)]
WITH_STATS: remove accidental dependency on ssl
Andy Green [Tue, 27 Jun 2017 02:07:34 +0000 (10:07 +0800)]
serving: protect file sending from downgrading to waiting pipelined headers
https://github.com/warmcat/libwebsockets/issues/946
Andy Green [Wed, 28 Jun 2017 01:50:54 +0000 (09:50 +0800)]
cmake: fix logic for individual test client build disable
Andy Green [Fri, 23 Jun 2017 02:27:52 +0000 (10:27 +0800)]
client: add libuv support to lws_client_reset
More direct solution to problem described in
https://github.com/warmcat/libwebsockets/pull/940
Andy Green [Fri, 23 Jun 2017 05:08:46 +0000 (13:08 +0800)]
windows: SO_EXCLUSIVEADDRUSE
https://github.com/warmcat/libwebsockets/issues/942
Andy Green [Wed, 21 Jun 2017 00:24:44 +0000 (08:24 +0800)]
client ssl: remove now meaningless check for non-server vhost
Andy Green [Tue, 20 Jun 2017 07:56:48 +0000 (15:56 +0800)]
client: getaddrinfo refactor
https://github.com/warmcat/libwebsockets/issues/926
Andy Green [Tue, 20 Jun 2017 03:46:49 +0000 (11:46 +0800)]
support openssl info callback
https://github.com/warmcat/libwebsockets/issues/936
Andy Green [Mon, 19 Jun 2017 04:29:48 +0000 (12:29 +0800)]
pkgconfig
https://github.com/warmcat/libwebsockets/issues/933
Sergey Kovalevich [Tue, 13 Jun 2017 13:55:07 +0000 (16:55 +0300)]
Subject: LWS_UNUSED
Andy Green [Wed, 14 Jun 2017 23:59:22 +0000 (07:59 +0800)]
esp32: make button debounce also available in factory
Andy Green [Wed, 14 Jun 2017 23:47:18 +0000 (07:47 +0800)]
esp32: add ar ranlib and linker cross paths
Andy Green [Mon, 12 Jun 2017 05:36:24 +0000 (13:36 +0800)]
HTTP_PROXY: make usable
Andy Green [Wed, 14 Jun 2017 01:45:30 +0000 (09:45 +0800)]
client: add iface in connection info, dont use vhost iface
Andy Green [Fri, 9 Jun 2017 13:46:26 +0000 (21:46 +0800)]
LWS_WITH_NO_LOGS: take care about unused array for log generation
WebsocketUser [Fri, 9 Jun 2017 12:20:42 +0000 (20:20 +0800)]
win32: enable 64-bit file lengths
https://github.com/warmcat/libwebsockets/issues/916
AG added more appveyor warning cleaning and stitched in cmake tests
Leonardo Maccari Rufino [Wed, 7 Jun 2017 21:14:35 +0000 (18:14 -0300)]
Subject: Fix compile error in GCC 4.1.2
Andy Green [Tue, 6 Jun 2017 23:57:19 +0000 (07:57 +0800)]
large files: convert content-length to use lws_filepos_t
Andy Green [Tue, 6 Jun 2017 23:46:51 +0000 (07:46 +0800)]
content-length api: unsigned long to lws_filepos_t
Leonardo Maccari Rufino [Fri, 2 Jun 2017 17:07:35 +0000 (14:07 -0300)]
Subject: Support to bind accepted socket to device on Linux
AG: move new member to end of info,
allow info member even on nonsupporting platform,
document requires root,
apply only to listen skt before we drop root,
add -k to test server to allow testing
Andy Green [Tue, 6 Jun 2017 22:10:02 +0000 (06:10 +0800)]
capabilities support
Leonardo Maccari Rufino [Mon, 5 Jun 2017 16:59:22 +0000 (13:59 -0300)]
Subject: windows: support to bind to a specific IPv6 address
Leonardo Maccari Rufino [Tue, 30 May 2017 21:31:06 +0000 (18:31 -0300)]
Subject: Support to IPv6 on Windows