Neil Horman 2000281dad Convert demos to primary build system 7 months ago
..
Makefile c18c301deb demos/http3: Use `SSL_write_ex2()` together with `SSL_WRITE_FLAG_CONCLUDE` 8 months ago
README.md 22fa1602da quic http3 demo: minor updates 1 year ago
build.info 2000281dad Convert demos to primary build system 6 months ago
gen_nghttp3.pl 2000281dad Convert demos to primary build system 6 months ago
ossl-nghttp3-demo.c 2000281dad Convert demos to primary build system 6 months ago
ossl-nghttp3.c b646179229 Copyright year updates 6 months ago
ossl-nghttp3.h 17b8f405a2 Rename 1 year ago

README.md

HTTP/3 Demo using OpenSSL QUIC and nghttp3

This is a simple demo of how to use HTTP/3 with OpenSSL QUIC using the HTTP/3 library “nghttp3”.

The demo is structured into two parts:

  • an adaptation layer which binds nghttp3 to OpenSSL's QUIC implementation (ossl-nghttp3.c);
  • a simple application which makes an HTTP/3 request using this adaptation layer (ossl-nghttp3-demo.c).

The Makefile in this directory can be used to build the demo on *nix-style systems. You will need the nghttp3 library and header file. On Ubuntu, these can be obtained by installing the package libnghttp3-dev.

Running the Demo

Depending on your system configuration it may be necessary to set the SSL_CERT_FILE or SSL_CERT_DIR environment variables to a location where trusted root CA certificates can be found.

After building by running make, run ./ossl-nghttp3-demo with a hostname and port as the sole argument:

$ make
$ LD_LIBRARY_PATH=../.. ./ossl-nghttp3-demo www.google.com:443

The demo produces the HTTP response headers in textual form as output followed by the response body.

See Also