gojimmypi 560d89ed44 Update Arduino files for wolfssl 5.7.4 1 week ago
..
asn1 aa18bbca55 assorted cleanups and refactors for C89 conformance, codespell and check-source-text, and consistent heap shim usage. 3 weeks ago
async b178138d83 src/internal.c: in wolfSSL_ERR_reason_error_string(), add missing error string for SCR_DIFFERENT_CERT_E, and de-gate error strings previously gated on HAVE_HTTP_CLIENT. 3 months ago
benchmark 165b4afbeb Merge pull request #8143 from SparkiDev/kyber_plus_mlkem 3 weeks ago
client ef67b1c06a Support for building without wolfssl/openssl header files. ZD 18465 1 week ago
configs 560d89ed44 Update Arduino files for wolfssl 5.7.4 1 week ago
echoclient a2bcbf7ecf additional fixes and peer review for -DOPENSSL_EXTRA -DOPENSSL_COEXIST: cover -DWOLFSSL_QUIC, fix -DNO_ASN, rename WOLFSSL_ASN1_TYPE_* to WOLFSSL_V_ASN1_*, completed nativization of NID_*, and switch to prefix WC_NID_ rather than wc_NID_. 1 month ago
echoserver 950ee40111 additional fixes and enhancements for -DOPENSSL_EXTRA -DOPENSSL_COEXIST: 1 month ago
pem aa18bbca55 assorted cleanups and refactors for C89 conformance, codespell and check-source-text, and consistent heap shim usage. 3 weeks ago
sctp 537827ebde Add missing config.h on some .c files. 3 months ago
server ef67b1c06a Support for building without wolfssl/openssl header files. ZD 18465 1 week ago
README.md d84adce608 Fix Micrium config and new examples with NO_FILESYSTEM 1 year ago
include.am 57e870e0d4 Add Async examples 1 year ago

README.md

wolfSSL examples directory

client and server

These directories contain a client (client.c) and server (server.c) that utilize a variety of the wolfSSL library's capabilities. The manner in which both programs operate can depend on the configure or can be specified at run-time depending on the end goal. Both applications contain testing as well as benchmarking code.

Compile

./configure
make

Usage

./examples/server/server

./examples/client/client

Run ./examples/server/server -h and ./examples/client/client -h for usage details.

For simpler wolfSSL TLS server/client examples, visit https://github.com/wolfSSL/wolfssl-examples/tree/master/tls

echoclient and echoserver

These directories contain a client (echoclient.c) and server (echoserver.c) that establish a connection encrypted by wolfSSL. Like the names indicate, once the connection has been established any messages entered into echoclient are sent to and displayed on the echoserver and are then echoed back to echoclient. The nature of the encryption, as well as additional behavior of the two programs, depends on how wolfSSL was configured ( DTLS enabled/disabled, Filesystem enabled/disabled, etc ... ).

Compile

./configure
make

Usage

./examples/echoserver/echoserver

./examples/echoclient/echoclient

benchmark

The benchmark directory offers an application that can help you grasp just how well wolfSSL's TLS functionality is performing on your local machine.

Compile

./configure
make

Usage

./examples/benchmark/tls_bench

The tls_bench executable can also be compiled separately with gcc -lwolfssl -lpthread -o tls_bench tls_bench.c.

Run ./examples/benchmark/tls_bench -? for usage details.

sctp

This directory contains servers and clients that demonstrate wolfSSL's DTLS-SCTP support.

Compile

./configure --enable-sctp
make

Usage

./examples/sctp/sctp-server

./examples/sctp/sctp-client

and

./examples/sctp/sctp-server-dtls

./examples/sctp/sctp-client-dtls

configs

This directory contains example wolfSSL configuration file templates for use when autoconf is not available, such as building with a custom IDE.

See configs/README.md for more details.

asn1

This directory contains an example that prints the ASN.1 data of a BER/DER or PEM encoded file. Configure wolfSSL with --enable-asn-print.

pem

This directory contains an example of converting to/from PEM and DER. Configure wolfSSL with --enable-coding