Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
4 changes: 4 additions & 0 deletions wolfHSM/Makefile
Original file line number Diff line number Diff line change
Expand Up @@ -118,6 +118,10 @@ html-prep: api
# 4. Three regexes to remove metadata which outputs in the PDF text
# 5. Fix titles of the header files Markdown
# 6. Two regexes to handle bad Doxygen that didn't convert and the LaTeX processor thinks is LaTeX commands
# NOTE: The `cat` commands below assemble the Client (10) and Server (11) API
# References for the PDF from hardcoded lists. They mirror the API Reference nav
# sections in mkdocs.yml (which drive the HTML build); the PDF build does not
# read that nav. Keep both locations in sync.
.PHONY: pdf-prep
pdf-prep: api
$(Q)cp -a api/md/*8h* build/pdf/
Expand Down
3 changes: 3 additions & 0 deletions wolfHSM/mkdocs.yml
Original file line number Diff line number Diff line change
Expand Up @@ -14,6 +14,9 @@ nav:
- "7. Examples": 7-Examples.md
- "8. Integration": 8-Integration.md
- "9. Configuration": 9-Configuration.md
# NOTE: The PDF build (see Makefile, pdf-prep target) assembles the Client
# (10) and Server (11) API References from hardcoded `cat` lists. It does not
# read this nav, so keep those `cat` commands in sync with these sections.
- "10. Client API Reference":
- Overview: 10-API-docs-client.md
- Client API: wh__client_8h.md
Expand Down
5 changes: 4 additions & 1 deletion wolfMQTT/Makefile
Original file line number Diff line number Diff line change
Expand Up @@ -57,6 +57,9 @@ html-prep: api
# 4. Three regexes to remove metadata which outputs in the PDF text
# 5. Fix titles of the header files Markdown
# 6. Two regexes to handle bad Doxygen that didn't convert and the LaTeX processor thinks is LaTeX commands
# NOTE: The final `cat` assembles the API Reference for the PDF from a hardcoded
# list. It mirrors the "5. API Reference" nav in mkdocs.yml (which drives the
# HTML build); the PDF build does not read that nav. Keep both lists in sync.
.PHONY: pdf-prep
pdf-prep: api
$(Q)perl -i -pe "s/# /## /g" api/md/*.md
Expand All @@ -75,4 +78,4 @@ pdf-prep: api
$(Q)perl -i -pe "s/(?<=md\#enum\-)(.*)(?=\))/\$$1=~s#-#_#gr/ge" api/md/*.md
$(Q)rm -rf build/pdf/chapter05.md
$(Q)echo '# API Reference' >> build/pdf/chapter05.md
$(Q)cat api/md/mqtt__client_8h.md api/md/mqtt__socket_8h.md api/md/mqtt__socket_8h.md api/md/mqtt__types_8h.md >> build/pdf/chapter05.md
$(Q)cat api/md/mqtt__client_8h.md api/md/mqtt__packet_8h.md api/md/mqtt__socket_8h.md api/md/mqtt__types_8h.md >> build/pdf/chapter05.md
3 changes: 3 additions & 0 deletions wolfMQTT/mkdocs.yml
Original file line number Diff line number Diff line change
Expand Up @@ -8,6 +8,9 @@ nav:
- "2. Building wolfMQTT": chapter02.md
- "3. Getting Started": chapter03.md
- "4. Library Design": chapter04.md
# NOTE: The PDF build (see Makefile, pdf-prep target) assembles the API
# Reference from a hardcoded `cat` list. It does not read this nav, so keep
# that `cat` in sync when modifying the header list below.
- "5. API Reference":
- mqtt__client_8h.md
- mqtt__packet_8h.md
Expand Down
17 changes: 13 additions & 4 deletions wolfSSL/Makefile
Original file line number Diff line number Diff line change
Expand Up @@ -29,7 +29,8 @@ APPENDIX= appendix01.md \
appendix07.md \
appendix08.md \
appendix09.md \
appendix10.md
appendix10.md \
appendix11.md

ifeq ($(DOC_LANG),JA)
PDF = wolfSSL-Manual-jp.pdf
Expand Down Expand Up @@ -77,6 +78,14 @@ html-prep: api
# 4. Three regexes to remove metadata which outputs in the PDF text
# 5. Fix titles of the header files Markdown
# 6. Two regexes to handle bad Doxygen that didn't convert and the LaTeX processor thinks is LaTeX commands
# Cat:
# A. wolfSSL API Reference
# B. wolfCrypt API Reference -> Utilities / basic items, then Algorithms
# C. API Header Files
# NOTE: The `cat` commands below assemble the wolfSSL (A), wolfCrypt (B), and
# API Header File (C) references for the PDF from hardcoded lists. They mirror
# the API Reference nav sections in mkdocs.yml (which drive the HTML build); the
# PDF build does not read that nav. Keep both locations in sync.
.PHONY: pdf-prep
pdf-prep: api
$(Q)cp src/*.png build/pdf/
Expand All @@ -89,12 +98,12 @@ pdf-prep: api
$(Q)perl -i -pe "s/^-(-)+$$//" build/pdf/group* build/pdf/*8h*
$(Q)perl -i -pe "s/^title:.*//" build/pdf/group* build/pdf/*8h*
$(Q)perl -i -pe "s/^Updated on.*//" build/pdf/group* build/pdf/*8h*
$(Q)perl -i -pe "s/dox_comments\/$(HEADER_fFILES)\///" build/pdf/*8h*
$(Q)perl -i -pe "s/dox_comments\/$(HEADER_FILES)\///" build/pdf/*8h*
$(Q)perl -i -pe "s/^\\\\//" build/pdf/group* build/pdf/*8h*
$(Q)perl -i -pe "s/\\\\par/par/g" build/pdf/group* build/pdf/*8h*
$(Q)perl -i -pe "s/group__.*.md//g" build/pdf/*8h* build/pdf/chapter*
$(Q)perl -i -pe "s/(ssl|wolfio|cryptocb|types|hash)_8h.md//g" build/pdf/chapter*
$(Q)cat build/pdf/group__CertManager.md build/pdf/group__Memory.md build/pdf/group__openSSL.md build/pdf/group__CertsKeys.md build/pdf/group__IO.md build/pdf/group__Setup.md build/pdf/group__Debug.md build/pdf/group__TLS.md >> build/pdf/appendix01.md
$(Q)cat build/pdf/group__ASN.md build/pdf/group__Base__Encoding.md build/pdf/group__Compression.md build/pdf/group__Error.md build/pdf/group__IoTSafe.md build/pdf/group__Logging.md build/pdf/group__Math.md build/pdf/group__Random.md build/pdf/group__Signature.md build/pdf/group__wolfCrypt.md build/pdf/group__DES.md build/pdf/group__AES.md build/pdf/group__ARC4.md build/pdf/group__BLAKE2.md build/pdf/group__Camellia.md build/pdf/group__ChaCha.md build/pdf/group__ChaCha20Poly1305.md build/pdf/group__Crypto.md build/pdf/group__Curve25519.md build/pdf/group__Curve448.md build/pdf/group__DSA.md build/pdf/group__Diffie-Hellman.md build/pdf/group__ECC.md build/pdf/group__ED25519.md build/pdf/group__ED448.md build/pdf/group__PSA.md build/pdf/group__SipHash.md >> build/pdf/appendix02.md
$(Q)cat build/pdf/aes_8h.md build/pdf/arc4_8h.md build/pdf/asn_8h.md build/pdf/asn__public_8h.md build/pdf/blake2_8h.md build/pdf/bn_8h.md build/pdf/camellia_8h.md build/pdf/chacha20__poly1305_8h.md build/pdf/chacha_8h.md build/pdf/cmac_8h.md build/pdf/coding_8h.md build/pdf/compress_8h.md build/pdf/cryptocb_8h.md build/pdf/curve25519_8h.md build/pdf/curve448_8h.md build/pdf/des3_8h.md build/pdf/dh_8h.md build/pdf/doxygen__groups_8h.md build/pdf/doxygen__pages_8h.md build/pdf/dsa_8h.md build/pdf/ecc_8h.md build/pdf/eccsi_8h.md build/pdf/ed25519_8h.md build/pdf/ed448_8h.md build/pdf/error-crypt_8h.md build/pdf/evp_8h.md build/pdf/hash_8h.md build/pdf/hmac_8h.md build/pdf/iotsafe_8h.md build/pdf/logging_8h.md build/pdf/md2_8h.md build/pdf/md4_8h.md build/pdf/md5_8h.md build/pdf/memory_8h.md build/pdf/pem_8h.md build/pdf/pkcs11_8h.md build/pdf/pkcs7_8h.md build/pdf/poly1305_8h.md build/pdf/psa_8h.md build/pdf/pwdbased_8h.md build/pdf/quic_8h.md build/pdf/random_8h.md build/pdf/ripemd_8h.md build/pdf/rsa_8h.md build/pdf/sakke_8h.md build/pdf/sha256_8h.md build/pdf/sha512_8h.md build/pdf/sha_8h.md build/pdf/signature_8h.md build/pdf/siphash_8h.md build/pdf/srp_8h.md build/pdf/ssl_8h.md build/pdf/tfm_8h.md build/pdf/types_8h.md build/pdf/wc__encrypt_8h.md build/pdf/wc__port_8h.md build/pdf/wolfio_8h.md >> build/pdf/appendix03.md
$(Q)cat build/pdf/group__ASN.md build/pdf/group__Base__Encoding.md build/pdf/group__Compression.md build/pdf/group__Error.md build/pdf/group__IoTSafe.md build/pdf/group__Logging.md build/pdf/group__Math.md build/pdf/group__Random.md build/pdf/group__Signature.md build/pdf/group__wolfCrypt.md build/pdf/group__DES.md build/pdf/group__AES.md build/pdf/group__ARC4.md build/pdf/group__BLAKE2.md build/pdf/group__Camellia.md build/pdf/group__ChaCha.md build/pdf/group__ChaCha20Poly1305.md build/pdf/group__CMAC.md build/pdf/group__Crypto.md build/pdf/group__Curve25519.md build/pdf/group__Curve448.md build/pdf/group__DSA.md build/pdf/group__Diffie-Hellman.md build/pdf/group__ECC.md build/pdf/group__ED25519.md build/pdf/group__ED448.md build/pdf/group__ECCSI__Overview.md build/pdf/group__ECCSI__Setup.md build/pdf/group__ECCSI__Operations.md build/pdf/group__SAKKE__Overview.md build/pdf/group__SAKKE__Setup.md build/pdf/group__SAKKE__RSK.md build/pdf/group__SAKKE__Operations.md build/pdf/group__HMAC.md build/pdf/group__LMS.md build/pdf/group__MD2.md build/pdf/group__MD4.md build/pdf/group__MD5.md build/pdf/group__ML__DSA.md build/pdf/group__ML__KEM.md build/pdf/group__Password.md build/pdf/group__PKCS7.md build/pdf/group__PKCS11.md build/pdf/group__Poly1305.md build/pdf/group__PSA.md build/pdf/group__PUF.md build/pdf/group__RIPEMD.md build/pdf/group__RSA.md build/pdf/group__SHA.md build/pdf/group__SHE.md build/pdf/group__SipHash.md build/pdf/group__SLH__DSA.md build/pdf/group__SrtpKdf.md build/pdf/group__SRP.md build/pdf/group__XMSS.md >> build/pdf/appendix02.md
$(Q)cat build/pdf/aes_8h.md build/pdf/arc4_8h.md build/pdf/ascon_8h.md build/pdf/asn_8h.md build/pdf/asn__public_8h.md build/pdf/blake2_8h.md build/pdf/bn_8h.md build/pdf/camellia_8h.md build/pdf/chacha20__poly1305_8h.md build/pdf/chacha_8h.md build/pdf/cmac_8h.md build/pdf/coding_8h.md build/pdf/compress_8h.md build/pdf/cryptocb_8h.md build/pdf/curve25519_8h.md build/pdf/curve448_8h.md build/pdf/des3_8h.md build/pdf/dh_8h.md build/pdf/doxygen__groups_8h.md build/pdf/doxygen__pages_8h.md build/pdf/dsa_8h.md build/pdf/ecc_8h.md build/pdf/eccsi_8h.md build/pdf/ed25519_8h.md build/pdf/ed448_8h.md build/pdf/error-crypt_8h.md build/pdf/evp_8h.md build/pdf/hash_8h.md build/pdf/hmac_8h.md build/pdf/iotsafe_8h.md build/pdf/kdf_8h.md build/pdf/logging_8h.md build/pdf/md2_8h.md build/pdf/md4_8h.md build/pdf/md5_8h.md build/pdf/memory_8h.md build/pdf/ocsp_8h.md build/pdf/pem_8h.md build/pdf/pkcs11_8h.md build/pdf/pkcs7_8h.md build/pdf/poly1305_8h.md build/pdf/psa_8h.md build/pdf/puf_8h.md build/pdf/pwdbased_8h.md build/pdf/quic_8h.md build/pdf/random_8h.md build/pdf/ripemd_8h.md build/pdf/rsa_8h.md build/pdf/sakke_8h.md build/pdf/sha256_8h.md build/pdf/sha3_8h.md build/pdf/sha512_8h.md build/pdf/sha_8h.md build/pdf/signature_8h.md build/pdf/siphash_8h.md build/pdf/srp_8h.md build/pdf/ssl_8h.md build/pdf/tfm_8h.md build/pdf/types_8h.md build/pdf/wc__encrypt_8h.md build/pdf/wc__lms_8h.md build/pdf/wc__mldsa_8h.md build/pdf/wc__mlkem_8h.md build/pdf/wc__port_8h.md build/pdf/wc__she_8h.md build/pdf/wc__slhdsa_8h.md build/pdf/wc__xmss_8h.md build/pdf/wolfio_8h.md >> build/pdf/appendix03.md

20 changes: 18 additions & 2 deletions wolfSSL/mkdocs.yml
Original file line number Diff line number Diff line change
Expand Up @@ -20,6 +20,10 @@ nav:
- "14. Licensing": chapter14.md
- "15. Support and Consulting": chapter15.md
- "16. wolfSSL Updates": chapter16.md
# NOTE: The PDF build (see Makefile, pdf-prep target) assembles the wolfSSL
# (A), wolfCrypt (B), and API Header File (C) references from hardcoded `cat`
# lists. It does not read this nav, so keep those `cat` commands in sync with
# these sections.
- "A. wolfSSL API Reference":
- "CertManager API": group__CertManager.md
- "Memory Handling": group__Memory.md
Expand Down Expand Up @@ -47,7 +51,7 @@ nav:
- "Algorithms - Camellia": group__Camellia.md
- "Algorithms - ChaCha": group__ChaCha.md
- "Algorithms - ChaCha20_Poly1305": group__ChaCha20Poly1305.md
- "Algorithms - CMAC ": group__CMAC.md
- "Algorithms - CMAC": group__CMAC.md
- "Callbacks - CryptoCb": group__Crypto.md
- "Algorithms - Curve25519": group__Curve25519.md
- "Algorithms - Curve448": group__Curve448.md
Expand All @@ -66,21 +70,27 @@ nav:
- "Operations on/with SAKKE RSK": group__SAKKE__RSK.md
- "Operations using SAKKE Key": group__SAKKE__Operations.md
- "Algorithms - HMAC": group__HMAC.md
- "Algorithms - LMS / HSS (RFC 8554)": group__LMS.md
- "Algorithms - MD2": group__MD2.md
- "Algorithms - MD4": group__MD4.md
- "Algorithms - MD5": group__MD5.md
- "Algorithms - ML-DSA (FIPS 204)": group__ML__DSA.md
- "Algorithms - ML-KEM (FIPS 203)": group__ML__KEM.md
- "Algorithms - Password Based": group__Password.md
- "Algorithms - PKCS7": group__PKCS7.md
- "Algorithms - PKCS11": group__PKCS11.md
- "Algorithms - Poly1305": group__Poly1305.md
- "Algorithms - PSA": group__PSA.md
- "Algorithms - PUF": group__PUF.md
- "Algorithms - RIPEMD": group__RIPEMD.md
- "Algorithms - RSA": group__RSA.md
- "Algorithms - SHA 128/224/256/384/512": group__SHA.md
- "Algorithms - SHE": group__SHE.md
- "Algorithms - SipHash": group__SipHash.md
- "Algorithms - SLH-DSA (FIPS 205)": group__SLH__DSA.md
- "Algorithms - SrtpKdf": group__SrtpKdf.md
- "Algorithms - SRP": group__SRP.md
- "Algorithms - XMSS / XMSS^MT (RFC 8391)": group__XMSS.md
- "C. API Header Files":
- aes_8h.md
- arc4_8h.md
Expand Down Expand Up @@ -124,6 +134,7 @@ nav:
- pkcs7_8h.md
- poly1305_8h.md
- psa_8h.md
- puf_8h.md
- pwdbased_8h.md
- quic_8h.md
- random_8h.md
Expand All @@ -138,11 +149,16 @@ nav:
- siphash_8h.md
- srp_8h.md
- ssl_8h.md
- wc__she_8h.md
- tfm_8h.md
- types_8h.md
- wc__encrypt_8h.md
- wc__lms_8h.md
- wc__mldsa_8h.md
- wc__mlkem_8h.md
- wc__port_8h.md
- wc__she_8h.md
- wc__slhdsa_8h.md
- wc__xmss_8h.md
- wolfio_8h.md
- "D. SSL/TLS Overview": appendix04.md
- "E. RFCs, Specifications, and Reference": appendix05.md
Expand Down
2 changes: 1 addition & 1 deletion wolfSSL/src/appendix06.md
Original file line number Diff line number Diff line change
Expand Up @@ -92,7 +92,7 @@ Additional wolfSSL error codes can be found in `wolfssl/error-ssl.h`
| `UNKNOWN_MAX_FRAG_LEN_E` | -382 | Unrecognized max frag len Error |
| `KEYUSE_SIGNATURE_E` | -383 | KeyUse digSignature error |
| `KEYUSE_ENCIPHER_E` | -385 | KeyUse KeyEncipher error |
| `EXTKEYUSE_AUTH_E` | -386 | ExtKeyUse server|client_auth |
| `EXTKEYUSE_AUTH_E` | -386 | ExtKeyUse server\|client_auth |
| `SEND_OOB_READ_E` | -387 | Send Cb out of bounds read |
| `SECURE_RENEGOTIATION_E` | -388 | Invalid renegotiation info |
| `SESSION_TICKET_LEN_E` | -389 | Session Ticket too large |
Expand Down
14 changes: 7 additions & 7 deletions wolfSSL/src/chapter02.md
Original file line number Diff line number Diff line change
Expand Up @@ -1185,7 +1185,7 @@ Enables TLS session ticket support (RFC 5077). Allows the server to issue sessio

#### HAVE_TRUSTED_CA

Enables the Trusted CA Indication TLS extension (RFC 4366). Allows the client to indicate which CA certificates it trusts, helping the server select the appropriate certificate chain.
Enables the Trusted CA Indication TLS extension (RFC 6066). Allows the client to indicate which CA certificates it trusts, helping the server select the appropriate certificate chain.

#### HAVE_RPK

Expand Down Expand Up @@ -1801,7 +1801,7 @@ Enables debug logging for the OpenSSL compatibility layer functions. Helps trace

#### HAVE_BLAKE2

Enables Blake2s algorithm support
Enables Blake2b algorithm support

#### HAVE_FALLBACK_SCSV

Expand Down Expand Up @@ -2506,7 +2506,7 @@ This extension allows debugging callbacks through the use of signals in an envir

#### WOLF_CRYPTO_CB

Enable crypto callback support. This feature is also enabled automatically when [`--enable-cryptocb`](#enable-cryptocb) is used.
Enable crypto callback support. This feature is also enabled automatically when [`--enable-cryptocb`](#--enable-cryptocb) is used.

#### WOLF_CRYPTO_CB_FIND

Expand Down Expand Up @@ -2562,7 +2562,7 @@ Allow allocation of subjectCN and publicKey fields when parsing certificates eve

#### WOLFSSL_USER_IO

Allows the user to remove automatic setting of the default I/O functions [`EmbedSend()`](wolfio_8h.md#function-embedsend) and [`EmbedReceive()`](wolfio_8h.md#function-embedrecieve). Used for custom I/O abstraction layer (see [Abstraction Layers](chapter05.md#abstraction-layers) for more details).
Allows the user to remove automatic setting of the default I/O functions [`EmbedSend()`](wolfio_8h.md#function-embedsend) and [`EmbedReceive()`](wolfio_8h.md#function-embedreceive). Used for custom I/O abstraction layer (see [Abstraction Layers](chapter05.md#abstraction-layers) for more details).

#### NO_FILESYSTEM

Expand Down Expand Up @@ -4766,7 +4766,7 @@ Enables RSA verify only support (**note** requires [`--enable-cryptonly`](#--ena

### `--enable-rsapub`

Default value: Enabled RSA public key only support (**note** requires [`--enable-cryptonly`](#--enable-cryptonly))
Enables RSA public key only support (**note** requires [`--enable-cryptonly`](#--enable-cryptonly))

### `--enable-armasm`

Expand All @@ -4782,7 +4782,7 @@ Disable TLS 1.2 support

Enable TLS 1.3 support

This build option can be combined with [`--disable-tlsv12`](#--disable-tlsv12) and [`--disable-oldtls`](#--disable-oldtlx) to produce a wolfSSL build that is only TLS 1.3.
This build option can be combined with [`--disable-tlsv12`](#--disable-tlsv12) and [`--disable-oldtls`](#--disable-oldtls) to produce a wolfSSL build that is only TLS 1.3.

### `--enable-all`

Expand Down Expand Up @@ -4851,7 +4851,7 @@ The following two defines can be used with `--enable-cryptocb` to complie out RS
* WOLF_CRYPTO_CB_ONLY_RSA - compiles out RSA software crypto fallback
* WOLF_CRYPTO_CB_ONLY_ECC - compiles out ECC software crypto fallback

Use of the WOLF_CRYPTO_CB_ONLY_* options requires disabling the examples. See [`--disable-examples`](#disable-examples)
Use of the WOLF_CRYPTO_CB_ONLY_* options requires disabling the examples. See [`--disable-examples`](#--disable-examples)

### `--enable-reproducible-build`

Expand Down
8 changes: 4 additions & 4 deletions wolfSSL/src/chapter03.md
Original file line number Diff line number Diff line change
Expand Up @@ -216,7 +216,7 @@ Returns:
wolfSSL_connect avg took: 296.417 milliseconds
```

If you'd like to change the default host from localhost, or the default port from 11111, you can change these settings in `/wolfssl/test.h`. The variables wolfSSLIP and wolfSSLPort control these settings. Re-build all of the examples including testsuite when changing these settings otherwise the test programs won't be able to connect to each other.
If you'd like to change the default host from localhost, or the default port from 11111, you can change these settings in `wolfssl/test.h`. The variables wolfSSLIP and wolfSSLPort control these settings. Re-build all of the examples including testsuite when changing these settings otherwise the test programs won't be able to connect to each other.

By default, the wolfSSL example client tries to connect to the specified server using TLS 1.2. The user is able to change the SSL/TLS version which the client uses by passing the `-v` command line option. The following values are available for this option:

Expand Down Expand Up @@ -454,7 +454,7 @@ There are several build options available to make building the benchmark applica
#### BENCH_EMBEDDED
Enabling this define will switch the benchmark application from using Megabytes to using Kilobytes, therefore reducing the memory usage. By default, when using this define, ciphers and algorithms will be benchmarked with 25kB. Public key algorithms will only be benchmarked over 1 iteration (as public key operations on some embedded processors can be fairly slow). These can be adjusted in `benchmark.c` by altering the variables `numBlocks` and `times` located inside the `BENCH_EMBEDDED` define.
Enabling this define will switch the benchmark application from using Megabytes to using Kilobytes, therefore reducing the memory usage. By default, when using this define, ciphers and algorithms will be benchmarked with 25kB. Public key algorithms will only be benchmarked over 1 iteration (as public key operations on some embedded processors can be fairly slow). These can be adjusted in `benchmark.c` by altering the variables `numBlocks` and `ntimes` located inside the `BENCH_EMBEDDED` define.
#### USE_CERT_BUFFERS_1024
Expand Down Expand Up @@ -552,7 +552,7 @@ calling:
wolfSSL_Cleanup();
```
For an example of a client application using wolfSSL, see the client example located in the `<wolfssl_root>/examples/client.c` file.
For an example of a client application using wolfSSL, see the client example located in the `<wolfssl_root>/examples/client/client.c` file.
## Changing a Server Application to Use wolfSSL
Expand Down Expand Up @@ -594,4 +594,4 @@ This section will explain the basic steps needed to add wolfSSL to a server appl
It is possible to load certificates and keys from buffers as well if there is no filesystem available. In this case, see the [`wolfSSL_CTX_use_certificate_buffer()`](group__CertsKeys.md#function-wolfssl_ctx_use_certificate_buffer) and [`wolfSSL_CTX_use_PrivateKey_buffer()`](group__CertsKeys.md#function-wolfssl_ctx_use_privatekey_buffer) API documentation, linked here, for more information.
For an example of a server application using wolfSSL, see the server example located in the `<wolfssl_root>/examples/server.c` file.
For an example of a server application using wolfSSL, see the server example located in the `<wolfssl_root>/examples/server/server.c` file.
Loading
Loading