A fast, lightweight websockets server implementation. Supports version 13 of the core websocket protocol.
Fork of the websockets egg to CHICKEN 5 scheme. Original module authored by Thomas Hintz with contributions from Seth Alves.
chicken-install
in the repository root
See original websockets documentation for more information.
Launch the sample implementation from the test directory with
csi -s example.scm
Navigate to http://localhost:8080 to send and receive messages
Passes sections 1-10 of the Autobahn websocket compliance test suite.
Build and start the echo server:
csc -O3 echo-server.scm;./echo-server
Run the test suite against the listening server from another terminal:
docker run -it --rm \
-v "${PWD}/test:/config" \
-v "${PWD}/reports:/reports" \
--net="host" \
crossbario/autobahn-testsuite \
wstest --mode fuzzingclient --spec /config/ws-test.spec
- Replaced various imported modules to CHICKEN 5 compatible modules
- Repackaged setup to declarative egg syntax
- Fix out-of-range exception when constructing u8vector from 2 byte close code
- Fix error for non-toplevel definitions outside of a body context (shift)
- Validated against autobahn test suite
- Formatting, indentation
BSD-3-Clause, see LICENSE