]> git.ipfire.org Git - thirdparty/openssl.git/commitdiff
Update README-QUIC.md with server-side QUIC support information
authorSamson S. Kolge <eglok1980@gmail.com>
Wed, 2 Apr 2025 10:32:10 +0000 (16:02 +0530)
committerMatt Caswell <matt@openssl.org>
Thu, 3 Apr 2025 11:47:15 +0000 (12:47 +0100)
- Add information about OpenSSL 3.5 server-side QUIC support

- Include specific command instructions for running the QUIC server example

- Explicitly note that s_server does NOT support QUIC

- Fix documentation formatting (trailing spaces and blank lines around code blocks)

Signed-off-by: Samson S. Kolge <eglok1980@gmail.com>
Reviewed-by: Tomas Mraz <tomas@openssl.org>
Reviewed-by: Matt Caswell <matt@openssl.org>
(Merged from https://github.com/openssl/openssl/pull/27230)

README-QUIC.md

index 554fe9bc2b8a3eaca38c17e84f9c452b8d266602..5b70464e5db129f03b0830c3baca796fb6482d26 100644 (file)
@@ -2,7 +2,7 @@ Using OpenSSL with QUIC
 =======================
 
 From OpenSSL 3.2, OpenSSL features support for making QUIC connections as a
-client.
+client. Starting with OpenSSL 3.5, server-side QUIC support has also been added.
 
 Users interested in using the new QUIC functionality are encouraged to look at
 some of the following resources:
@@ -70,6 +70,34 @@ using simple TCP/TLS-like usage. Note that OpenSSL has no direct support for
 HTTP/3 so connecting to an HTTP/3 server should be possible but sending an
 HTTP/3 request or receiving any response data is not.
 
+### How can I create a QUIC server with OpenSSL?
+
+Starting with OpenSSL 3.5, you can create a QUIC server. OpenSSL provides a server
+implementation example that you can use as a reference:
+
+The example QUIC server implementation can be found in the source tree under
+[`demos/quic/server`](./demos/quic/server/). This demonstrates how to implement a
+basic QUIC server using the OpenSSL API.
+
+To run the example QUIC server:
+
+```shell
+$ ./demos/quic/server/server <port-number> <certificate-file> <key-file>
+```
+
+For example:
+
+```shell
+$ ./demos/quic/server/server 4433 server.pem server.key
+```
+
+Replace `server.pem` and `server.key` with your certificate and private key files.
+Note that the standard `openssl s_server` command does NOT support QUIC - you must
+use this dedicated server example instead.
+
+For more information about implementing QUIC servers with OpenSSL, refer to the
+[OpenSSL Guide] and the [openssl-quic(7) manual page].
+
 [openssl-quic(7) manual page]: https://www.openssl.org/docs/manmaster/man7/openssl-quic.html
 [OpenSSL Guide]: https://www.openssl.org/docs/manmaster/man7/ossl-guide-introduction.html
 [DDD]: https://github.com/openssl/openssl/tree/master/doc/designs/ddd