a msgpack-rpc + α implementation for C++ language.
- xNix
- autotools and libtool
aclocal, autoheader, automake, autoconf and libtoolize - OpenSSL v1.0.1 or later
If you want to use {SSL, WSS} transport, install openssl developer packages.
- autotools and libtool
- Windows
- Python v3.x
needed for creating version.h files etc. - CMake v3.4 or later
needed for creating visual studio solution file. - OpenSSL v1.0.1 or later
If you want to use {SSL, WSS} transport, download binary distributions from https://www.openssl.org/community/binaries.html and install it. - Windows SDK
Your application must link advapi32, iphlpapi, psapi, shell32, userenv and ws2_32.(needed by libuv) And must link gdi32 and user32 when using OpenSSL.
- Python v3.x
- xNix and Windows
- Doxygen and Graphviz
If you want to create a manual, install doxygen and graphviz.
- Doxygen and Graphviz
$ git submodule update --init --recursive
- xNix
$ ./bootstrap $ ./configure [--prefix=/path/to/install] [--with-ssl=/path/to/OpenSSL] $ make clean all install $ cd doc; make doc
For more options, please check
$ ./configure --help
- Windows
$ vcbuild.bat [--prefix=/path/to/install] [--with-ssl=/path/to/OpenSSL]
For more options, please check
$ vcbuild.bat --help
+-----------+ +-----------+ | TCPClient | - TCP - | TCPServer | +-----------+ +-----------+
+-----------+ +------------+ +----------+ | WSClient | - WebSocket - | nginx etc. | - WebSocket - | WSServer | +-----------+ +------------+ +----------+
+-----------+ +--------------------------+ +-----------+ | WSClient | - WebSocket - | lighttpd w/ mod_wstunnel | - TCP - | TCPServer | +-----------+ +--------------------------+ +-----------+
You can create an application that supports muliti protocols like follows.
+-----------+ +-------------------------+ +-----------+ | WSSClient | - Sec-WebSocket - | WSSServer and TCPServer | - TCP - | TCPClient | +-----------+ +-------------------------+ +-----------+
- major
APIs and specifications are changed significantly, so you need to update server and client applications at the same time. - minor
APIs are changed only slightly, so you need to rewrite applications if using appropriate APIs. - patch
Bug fixes and security fixes etc.
The MIT License (MIT) See LICENSE for details.
And see some submodule LICENSEs(exist at deps dir).