GitHub CI / check_update (push) Waiting to run
Details
GitHub CI / check_docs (push) Waiting to run
Details
GitHub CI / check-c99 (push) Waiting to run
Details
GitHub CI / basic_gcc (push) Waiting to run
Details
GitHub CI / basic_clang (push) Waiting to run
Details
GitHub CI / linux-arm64 (push) Waiting to run
Details
GitHub CI / freebsd-x86_64 (push) Waiting to run
Details
GitHub CI / minimal (push) Waiting to run
Details
GitHub CI / no-deprecated (push) Waiting to run
Details
GitHub CI / no-shared-ubuntu (push) Waiting to run
Details
GitHub CI / no-shared-macos (macos-13) (push) Waiting to run
Details
GitHub CI / no-shared-macos (macos-14) (push) Waiting to run
Details
GitHub CI / non-caching (push) Waiting to run
Details
GitHub CI / address_ub_sanitizer (push) Waiting to run
Details
GitHub CI / fuzz_tests (push) Waiting to run
Details
GitHub CI / memory_sanitizer (push) Waiting to run
Details
GitHub CI / threads_sanitizer (push) Waiting to run
Details
GitHub CI / enable_non-default_options (push) Waiting to run
Details
GitHub CI / full_featured (push) Waiting to run
Details
GitHub CI / no-legacy (push) Waiting to run
Details
GitHub CI / legacy (push) Waiting to run
Details
GitHub CI / out-of-readonly-source-and-install-ubuntu (push) Waiting to run
Details
GitHub CI / out-of-readonly-source-and-install-macos (macos-13) (push) Waiting to run
Details
GitHub CI / out-of-readonly-source-and-install-macos (macos-14) (push) Waiting to run
Details
GitHub CI / external-tests-misc (push) Waiting to run
Details
GitHub CI / external-tests-oqs-provider (push) Waiting to run
Details
GitHub CI / external-tests-pkcs11-provider (push) Waiting to run
Details
GitHub CI / external-tests-pyca (3.9) (push) Waiting to run
Details
Compiler Zoo CI / compiler (map[cc:clang-11 distro:ubuntu-22.04]) (push) Waiting to run
Details
Compiler Zoo CI / compiler (map[cc:clang-12 distro:ubuntu-22.04]) (push) Waiting to run
Details
Compiler Zoo CI / compiler (map[cc:clang-13 distro:ubuntu-22.04]) (push) Waiting to run
Details
Compiler Zoo CI / compiler (map[cc:clang-14 distro:ubuntu-22.04]) (push) Waiting to run
Details
Compiler Zoo CI / compiler (map[cc:clang-15 distro:ubuntu-22.04 llvm-ppa-name:jammy]) (push) Waiting to run
Details
Compiler Zoo CI / compiler (map[cc:clang-16 distro:ubuntu-22.04 llvm-ppa-name:jammy]) (push) Waiting to run
Details
Compiler Zoo CI / compiler (map[cc:clang-17 distro:ubuntu-22.04 llvm-ppa-name:jammy]) (push) Waiting to run
Details
Compiler Zoo CI / compiler (map[cc:gcc-10 distro:ubuntu-22.04]) (push) Waiting to run
Details
Compiler Zoo CI / compiler (map[cc:gcc-11 distro:ubuntu-22.04]) (push) Waiting to run
Details
Compiler Zoo CI / compiler (map[cc:gcc-12 distro:ubuntu-22.04]) (push) Waiting to run
Details
Compiler Zoo CI / compiler (map[cc:gcc-13 distro:ubuntu-22.04 gcc-ppa-name:ubuntu-toolchain-r/test]) (push) Waiting to run
Details
Compiler Zoo CI / compiler (map[cc:gcc-9 distro:ubuntu-22.04]) (push) Waiting to run
Details
Cross Compile / cross-compilation (map[arch:aarch64-linux-gnu fips:no libs:libc6-dev-arm64-cross target:linux-aarch64]) (push) Waiting to run
Details
Cross Compile / cross-compilation (map[arch:alpha-linux-gnu fips:no libs:libc6.1-dev-alpha-cross target:linux-alpha-gcc]) (push) Waiting to run
Details
Cross Compile / cross-compilation (map[arch:arm-linux-gnueabi fips:no libs:libc6-dev-armel-cross target:linux-armv4 tests:-test_includes -test_store -test_x509_store]) (push) Waiting to run
Details
Cross Compile / cross-compilation (map[arch:arm-linux-gnueabihf fips:no libs:libc6-dev-armhf-cross target:linux-armv4 tests:-test_includes -test_store -test_x509_store]) (push) Waiting to run
Details
Cross Compile / cross-compilation (map[arch:hppa-linux-gnu fips:no libs:libc6-dev-hppa-cross target:-static -O1 linux-generic32 tests:-test_includes -test_store -test_x509_store]) (push) Waiting to run
Details
Cross Compile / cross-compilation (map[arch:hppa-linux-gnu libs:libc6-dev-hppa-cross target:linux-generic32 tests:none]) (push) Waiting to run
Details
Cross Compile / cross-compilation (map[arch:i386-pc-msdosdjgpp libs:libc-djgpp-dev libwatt-djgpp-dev djgpp-utils ppa:jwt27/djgpp-toolchain target:no-threads 386 DJGPP tests:none]) (push) Waiting to run
Details
Cross Compile / cross-compilation (map[arch:m68k-linux-gnu fips:no libs:libc6-dev-m68k-cross target:-static -m68040 linux-latomic -Wno-stringop-overflow tests:-test_includes -test_store -test_x509_store]) (push) Waiting to run
Details
Cross Compile / cross-compilation (map[arch:m68k-linux-gnu libs:libc6-dev-m68k-cross target:-mcfv4e -mxgot linux-latomic -Wno-stringop-overflow no-quic tests:none]) (push) Waiting to run
Details
Cross Compile / cross-compilation (map[arch:mips-linux-gnu fips:no libs:libc6-dev-mips-cross target:-static linux-mips32 tests:-test_includes -test_store -test_x509_store]) (push) Waiting to run
Details
Cross Compile / cross-compilation (map[arch:mips-linux-gnu libs:libc6-dev-mips-cross target:linux-mips32 tests:none]) (push) Waiting to run
Details
Cross Compile / cross-compilation (map[arch:mips64-linux-gnuabi64 fips:no libs:libc6-dev-mips64-cross target:-static linux64-mips64]) (push) Waiting to run
Details
Cross Compile / cross-compilation (map[arch:mips64-linux-gnuabi64 libs:libc6-dev-mips64-cross target:linux64-mips64 tests:none]) (push) Waiting to run
Details
Cross Compile / cross-compilation (map[arch:mipsel-linux-gnu fips:no libs:libc6-dev-mipsel-cross target:linux-mips32 tests:-test_includes -test_store -test_x509_store]) (push) Waiting to run
Details
Cross Compile / cross-compilation (map[arch:powerpc64le-linux-gnu fips:no libs:libc6-dev-ppc64el-cross target:linux-ppc64le]) (push) Waiting to run
Details
Cross Compile / cross-compilation (map[arch:riscv64-linux-gnu fips:no libs:libc6-dev-riscv64-cross target:linux64-riscv64]) (push) Waiting to run
Details
Cross Compile / cross-compilation (map[arch:s390x-linux-gnu fips:no libs:libc6-dev-s390x-cross target:linux64-s390x]) (push) Waiting to run
Details
Cross Compile / cross-compilation (map[arch:sh4-linux-gnu fips:no libs:libc6-dev-sh4-cross target:no-async linux-latomic tests:-test_includes -test_store -test_x509_store]) (push) Waiting to run
Details
Cross Compile / cross-compilation (map[arch:sparc64-linux-gnu libs:libc6-dev-sparc64-cross target:linux64-sparcv9 tests:none]) (push) Waiting to run
Details
Trigger docs.openssl.org deployment / trigger (push) Waiting to run
Details
Fuzz-checker CI / fuzz-checker (map[cc:afl-clang-fast config:enable-fuzz-afl no-module install:afl++ name:AFL]) (push) Waiting to run
Details
Fuzz-checker CI / fuzz-checker (map[cc:clang-18 config:enable-fuzz-libfuzzer enable-asan enable-ubsan -fno-sanitize=function -fsanitize-coverage=trace-cmp -DFUZZING_BUILD_MODE_UNSAFE_FOR_PRODUCTION extra:enable-fips enable-ec_nistp_64_gcc_128 -fno-sanitize=alignment ena… (push) Waiting to run
Details
Fuzz-checker CI / fuzz-checker (map[cc:clang-18 config:enable-fuzz-libfuzzer enable-asan enable-ubsan -fno-sanitize=function install:libfuzzer-18-dev libs:--with-fuzzer-lib=/usr/lib/llvm-18/lib/libFuzzer.a --with-fuzzer-include=/usr/include/clang/18/include/fuzzer linke… (push) Waiting to run
Details
CIFuzz / Fuzzing (push) Waiting to run
Details
Run-checker CI / run-checker (enable-trace enable-fips) (push) Waiting to run
Details
Run-checker CI / run-checker (no-cmp) (push) Waiting to run
Details
Run-checker CI / run-checker (no-cms) (push) Waiting to run
Details
Run-checker CI / run-checker (no-default-thread-pool) (push) Waiting to run
Details
Run-checker CI / run-checker (no-dgram) (push) Waiting to run
Details
Run-checker CI / run-checker (no-dh) (push) Waiting to run
Details
Run-checker CI / run-checker (no-dtls) (push) Waiting to run
Details
Run-checker CI / run-checker (no-ec) (push) Waiting to run
Details
Run-checker CI / run-checker (no-ecx) (push) Waiting to run
Details
Run-checker CI / run-checker (no-http) (push) Waiting to run
Details
Run-checker CI / run-checker (no-legacy) (push) Waiting to run
Details
Run-checker CI / run-checker (no-ml-dsa) (push) Waiting to run
Details
Run-checker CI / run-checker (no-ml-kem) (push) Waiting to run
Details
Run-checker CI / run-checker (no-quic) (push) Waiting to run
Details
Run-checker CI / run-checker (no-sock) (push) Waiting to run
Details
Run-checker CI / run-checker (no-ssl-trace) (push) Waiting to run
Details
Run-checker CI / run-checker (no-stdio) (push) Waiting to run
Details
Run-checker CI / run-checker (no-thread-pool) (push) Waiting to run
Details
Run-checker CI / run-checker (no-threads) (push) Waiting to run
Details
Run-checker CI / run-checker (no-tls) (push) Waiting to run
Details
Run-checker CI / run-checker (no-tls1_2) (push) Waiting to run
Details
Run-checker CI / run-checker (no-tls1_3) (push) Waiting to run
Details
Run-checker CI / run-checker (no-ui) (push) Waiting to run
Details
Run-checker merge / run-checker (enable-asan enable-ubsan no-shared no-asm -DOPENSSL_SMALL_FOOTPRINT -fno-sanitize=function) (push) Waiting to run
Details
Run-checker merge / run-checker (enable-pie) (push) Waiting to run
Details
Run-checker merge / run-checker (enable-ubsan no-asm -DOPENSSL_SMALL_FOOTPRINT -fno-sanitize=function) (push) Waiting to run
Details
Run-checker merge / run-checker (enable-weak-ssl-ciphers) (push) Waiting to run
Details
Run-checker merge / run-checker (enable-zlib) (push) Waiting to run
Details
Run-checker merge / run-checker (no-dso) (push) Waiting to run
Details
Run-checker merge / run-checker (no-dynamic-engine) (push) Waiting to run
Details
Run-checker merge / run-checker (no-ec2m enable-fips) (push) Waiting to run
Details
Run-checker merge / run-checker (no-engine no-shared) (push) Waiting to run
Details
Run-checker merge / run-checker (no-err) (push) Waiting to run
Details
Run-checker merge / run-checker (no-filenames) (push) Waiting to run
Details
Run-checker merge / run-checker (no-integrity-only-ciphers) (push) Waiting to run
Details
Run-checker merge / run-checker (no-module) (push) Waiting to run
Details
Run-checker merge / run-checker (no-ocsp) (push) Waiting to run
Details
Run-checker merge / run-checker (no-pinshared) (push) Waiting to run
Details
Run-checker merge / run-checker (no-srp) (push) Waiting to run
Details
Run-checker merge / run-checker (no-srtp) (push) Waiting to run
Details
Run-checker merge / run-checker (no-ts) (push) Waiting to run
Details
Run-checker merge / jitter (push) Waiting to run
Details
Run-checker merge / threads_sanitizer_atomic_fallback (push) Waiting to run
Details
Windows GitHub CI / shared (map[arch:win32 config:--strict-warnings no-fips os:windows-2025]) (push) Waiting to run
Details
Windows GitHub CI / shared (map[arch:win64 config:enable-fips no-thread-pool no-quic os:windows-2025]) (push) Waiting to run
Details
Windows GitHub CI / shared (map[arch:win64 config:enable-fips os:windows-2022]) (push) Waiting to run
Details
Windows GitHub CI / plain (windows-2022) (push) Waiting to run
Details
Windows GitHub CI / minimal (windows-2022) (push) Waiting to run
Details
Windows GitHub CI / cygwin (windows-2022, map[arch:win64 config:-DCMAKE_C_COMPILER=gcc --strict-warnings enable-demos no-fips]) (push) Waiting to run
Details
Windows Compression GitHub CI / zstd (push) Waiting to run
Details
Windows Compression GitHub CI / brotli (push) Waiting to run
Details
Reviewed-by: Matt Caswell <matt@openssl.org> Reviewed-by: Tomas Mraz <tomas@openssl.org> (Merged from https://github.com/openssl/openssl/pull/27981) |
||
---|---|---|
.. | ||
Makefile | ||
README.md | ||
build.info | ||
quic-client-block.c | ||
quic-client-non-block.c | ||
quic-multi-stream.c | ||
quic-server-block.c | ||
quic-server-non-block.c | ||
rootcert.pem | ||
rootkey.pem | ||
servercert.pem | ||
serverkey.pem | ||
tls-client-block.c | ||
tls-client-non-block.c | ||
tls-server-block.c |
README.md
The OpenSSL Guide Demos
The demos in this directory are the complete source code for the applications developed in the OpenSSL Guide tutorials. Refer to the various tutorial pages in the guide for an extensive discussion on the demos available here.
They must be built before they can be run. An example UNIX style Makefile is supplied. Just type "make" from this directory on a Linux/UNIX system.
Running the TLS Demos
To run the demos when linked with a shared library (default) ensure that libcrypto and libssl are on the library path. For example, assuming you have already built OpenSSL from this source and in the default location then to run the tls-client-block demo do this:
LD_LIBRARY_PATH=../.. ./tls-client-block hostname port
In the above replace "hostname" and "port" with the hostname and the port number of the server you are connecting to.
The above assumes that your default trusted certificate store containing trusted CA certificates has been properly setup and configured as described on the TLS Introduction page.
You can run a test server to try out these demos using the "openssl s_server" command line utility and using the test server certificate and key provided in this directory. For example:
LD_LIBRARY_PATH=../.. ../../apps/openssl s_server -www -accept localhost:4443 -cert servercert.pem -key serverkey.pem
The test server certificate in this directory will use a CA that will not be in your default trusted certificate store. The CA certificate to use is also available in this directory. To use it you can override the default trusted certificate store like this:
SSL_CERT_FILE=rootcert.pem LD_LIBRARY_PATH=../.. ./tls-client-block localhost 4443
If the above command is successful it will connect to the test "s_server" and send a simple HTTP request to it. The server will respond with a page of information giving details about the TLS connection that was used.
Note that the test server certificate used here is only suitable for use on "localhost".
The tls-client-non-block demo can be run in exactly the same way. Just replace "tls-client-block" in the above example commands with "tls-client-non-block".
Running the QUIC Demos
The QUIC demos can be run in a very similar way to the TLS demos.
While in the demos directory the QUIC server can be run like this:
LD_LIBRARY_PATH=../.. ./quic-server-block 4443 ./chain.pem ./pkey.pem
The QUIC demos can then be run in the same was as the TLS demos. For example to run the quic-client-block demo:
SSL_CERT_FILE=chain.pem LD_LIBRARY_PATH=../.. ./quic-client-block localhost 4443
Notes on the quic-hq-interop demo
The quic-hq-interop demo is effectively the same as the quic-client-nonblock demo, but is specifically constructed to use the hq-interop alpn for the purposes of interacting with other demonstration containers found in the QUIC working group interop runner It is run as follows:
SSL_CERT_FILE=ca.pem LD_LIBRARY_PATH=../../ ./quic-hq-interop host port file
The demo will then do the following:
- Connect to the server at host/port
- Negotiates the hq-interop alpn
- Issues an HTTP 1.0 GET request of the form "GET /$FILE"
- Reads any response from the server and write it verbatim to stdout
This demo can be used for any hq-interop negotiating server, but its use can most easily be seen in action in our quic interop container, buildable from ./test/quic_interop_openssl in this source tree.