Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/h2o/quicly
A modular QUIC stack designed primarily for H2O
https://github.com/h2o/quicly
Last synced: 2 days ago
JSON representation
A modular QUIC stack designed primarily for H2O
- Host: GitHub
- URL: https://github.com/h2o/quicly
- Owner: h2o
- License: mit
- Created: 2017-06-06T14:27:42.000Z (over 7 years ago)
- Default Branch: master
- Last Pushed: 2025-01-10T06:40:23.000Z (3 days ago)
- Last Synced: 2025-01-11T05:59:03.240Z (2 days ago)
- Language: C
- Homepage:
- Size: 4.62 MB
- Stars: 624
- Watchers: 43
- Forks: 117
- Open Issues: 98
-
Metadata Files:
- Readme: README.md
- Contributing: CONTRIBUTING.md
- License: LICENSE
Awesome Lists containing this project
- awesome-quic - quicly - A modular QUIC stack designed primarily for H2O HTTP server (Implementations)
README
quicly [![CI](https://github.com/h2o/quicly/actions/workflows/ci.yml/badge.svg)](https://github.com/h2o/quicly/actions/workflows/ci.yml)
===Quicly is an IETF [QUIC](https://quicwg.github.io/) protocol implementation, written from the ground up to be used primarily within the H2O HTTP server.
The software is licensed under the MIT License.
How to build
---```
% git submodule update --init --recursive
% cmake .
% make
```Building the software requires OpenSSL 1.0.2 or above.
If you have OpenSSL installed in a non-standard directory, you can pass the location using the `PKG_CONFIG_PATH` environment variable.```
% PKG_CONFIG_PATH=/path/to/openssl/lib/pkgconfig cmake .
```How to test
---Install dependencies first:
```
# If you use system perl, use --sudo
% curl -sL https://cpanmin.us | perl - --sudo --self-upgrade
% cpanm --installdeps --notest --sudo .# Otherwise, you'd better omit --sudo
% curl -sL https://cpanmin.us | perl - --self-upgrade
% cpanm --installdeps --notest .
```Then, run the tests:
```
% make check
```Running quicly
---A command-line program (named `cli`) that runs either as a server or a client `cli` is provided.
To run the command as a client, specify the peer hostname and port number as the arguments.
```
% ./cli host port
```To run the command as a server, specify the files that contain the certificate and private key, as well as the hostname and the port number to which the server should bind.
```
% ./cli -c server.crt -k server.key 0.0.0.0 4433
```For more options, please refer to `./cli --help`.