[Spice-devel] [PATCH spice-server 00/23] WebSocket support

Jeremy White jwhite at codeweavers.com
Tue Jun 25 18:30:08 UTC 2019


Series Acked-by: Jeremy White <jwhite at codeweavers.com>

On 6/25/19 11:11 AM, Frediano Ziglio wrote:
> 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
> 



More information about the Spice-devel mailing list