[Spice-devel] [PATCH spice-server 00/23] WebSocket support
Frediano Ziglio
fziglio at redhat.com
Tue Jun 25 16:11:24 UTC 2019
Updated a longstanding patch for WebSocket support.
This includes:
- style updates:
- types (C99 instead of GLib);
- memory allocation (GLib instead of SPICE functions);
- support for Windows;
- different fixes;
- automatic tests using Autobahn Testsuite;
- some missing features:
- PING/PONG messages;
- empty (0 bytes) frames.
Frediano Ziglio (22):
test-glib-compat: Fix G_PID_FORMAT definition for old systems
reds: Fix SSL_CTX_set_ecdh_auto call for some old OpenSSL
websocket: Simplify and fix constrain_iov
websocket: Move RedsWebSocket to header
websocket: Make websocket function more ABI compatibles with RedStream
websocket: Make websocket_ack_close static
websocket: New interface to create RedsWebSocket
websocket: Better encapsulation
websocket: Detect and handle some header error
websocket: Better variable types
websocket: Propagate some variable
websocket: Fix updating remaining bytes to write in websocket_write
websocket: Avoid possible server crash using websockets
websocket: Support correctly protocol values
websocket: Handle case if server cannot write the header entirely
websocket: Avoids to write close frame in the middle of data
websocket: Handle PING and PONG frames
test-websocket: Write a test helper to make possible to run Autobahn
testsuite
websocket: Do not require "Sec-WebSocket-Protocol" header
websocket: Handle text data
websocket: Handle continuation and 0-size frames
ci: Add test for websockets
Jeremy White (1):
Add support for clients connecting with the WebSocket protocol.
.gitlab-ci.yml | 20 +
configure.ac | 9 +
server/Makefile.am | 2 +
server/meson.build | 2 +
server/red-stream.c | 56 ++
server/red-stream.h | 2 +
server/reds.c | 15 +
server/tests/.gitignore | 1 +
server/tests/Makefile.am | 6 +
server/tests/autobahn-check-report | 18 +
server/tests/fuzzingclient.json | 11 +
server/tests/meson.build | 1 +
server/tests/test-glib-compat.h | 2 +-
server/tests/test-websocket.c | 299 +++++++++++
server/websocket.c | 796 +++++++++++++++++++++++++++++
server/websocket.h | 43 ++
16 files changed, 1282 insertions(+), 1 deletion(-)
create mode 100755 server/tests/autobahn-check-report
create mode 100644 server/tests/fuzzingclient.json
create mode 100644 server/tests/test-websocket.c
create mode 100644 server/websocket.c
create mode 100644 server/websocket.h
--
2.20.1
More information about the Spice-devel
mailing list