Skip to content

Commit

Permalink
quic docs: update ddd README.md
Browse files Browse the repository at this point in the history
Minor edits (expand MVP acronym, suggest how to install "libuv")

These changes are part of
openssl/project#253

Reviewed-by: Paul Dale <pauli@openssl.org>
Reviewed-by: Hugo Landau <hlandau@openssl.org>
(Merged from #22543)

(cherry picked from commit bcc04ab)
  • Loading branch information
James Muir authored and hlandau committed Nov 1, 2023
1 parent 96040e5 commit 97750ca
Showing 1 changed file with 7 additions and 5 deletions.
12 changes: 7 additions & 5 deletions doc/designs/ddd/README.md
Original file line number Diff line number Diff line change
Expand Up @@ -43,21 +43,21 @@ The demos also deliberately focus on aspects of libssl usage which are likely to
be relevant to QUIC and require changes; for example, how varied applications
have libssl perform network I/O, and how varied applications create sockets and
connections for use with libssl. The libssl API as a whole has a much larger
scope and includes innumerate functions and myriad features; the intention is
scope and includes numerous functions and features; the intention is
not to demonstrate all of these, because most of them will not be touched by
QUIC. For example, while many users of OpenSSL may make use of APIs for client
certificates or other TLS functionality, the use of QUIC is unlikely to have
implications for these APIs and demos demonstrating such functionality are
therefore out of scope.

[A report is available](REPORT.md) on the results of the DDD process following
the completion of the development of the QUIC MVP.
the completion of the development of the QUIC MVP (minimum viable product).

Background
----------

These demos were developed after analysis of the following open source
applications to determine libssl API usage patterns. The modally occurring usage
applications to determine libssl API usage patterns. The commonly occurring usage
patterns were determined and used to determine categories into which to classify
the applications:

Expand Down Expand Up @@ -86,8 +86,8 @@ the applications:
| pgbouncer | A | AOSF, BIOc |

* Blk: Whether the application uses blocking or non-blocking I/O.
* S: Blocking
* A: Nonblocking
* S: Blocking (Synchronous)
* A: Nonblocking (Asynchronous)
* FD: Whether the application creates and owns its own FD.
* AOSF: Application owns, calls SSL_set_fd.
* AOSFx: Application owns, calls SSL_set_[rw]fd, different FDs for read/write.
Expand All @@ -114,5 +114,7 @@ The demos found in this directory are:
| [ddd-05-mem-nonblocking](ddd-05-mem-nonblocking.c) | A-BIOm | A non-blocking example based on use of a memory buffer to feed OpenSSL encrypted data (corresponding to A-BIOm applications above) |
| [ddd-06-mem-uv](ddd-06-mem-uv.c) | A-BIOm | A non-blocking example based on use of a memory buffer to feed OpenSSL encrypted data; uses libuv, a real-world async I/O library |

On Ubuntu, libuv can be obtained by installing the package "libuv1-dev".

Availability of a default certificate store is assumed. `SSL_CERT_DIR` may be
set when running the demos if necessary.

0 comments on commit 97750ca

Please sign in to comment.