wslay-sys 0.1.1

Low-level FFI bindings to the wslay WebSocket C library (vendored).
docs.rs failed to build wslay-sys-0.1.1
Please check the build logs for more information.
See Builds for ideas on how to fix a failed build, or Metadata for how to configure docs.rs builds.
If you believe this is docs.rs' fault, open an issue.
Visit the last successful build: wslay-sys-0.1.0

wslay-sys

Low-level Rust FFI bindings to wslay, Tatsuhiro Tsujikawa's WebSocket C library.

The wslay C sources are vendored in this crate and compiled at build time with cc; the bindings are generated with bindgen. No system wslay installation is required.

This crate exposes wslay's event-based API verbatim — it is unsafe FFI only. For a safe, async wrapper (and a full-duplex WebSocket⇄byte-stream bridge with true sub-frame streaming), see h2ts-server.

Why wslay

wslay's event API, with wslay_event_config_set_no_buffering, delivers frame payloads incrementally via on_frame_recv_chunk_callback — it never buffers a whole frame, no matter how large. It performs no I/O itself (callback-driven), so it drops cleanly into async runtimes.

Build requirements

  • A C compiler (cc finds one automatically).
  • libclang (required by bindgen). On macOS it ships with the Command Line Tools; on Debian/Ubuntu install libclang-dev.

License

The bindings in this crate are dual-licensed under MIT or Apache-2.0, at your option. The vendored wslay C sources are third-party and remain MIT-only — see vendor/COPYING.

Part of h2ts.