Expand description
The wolfssl crate is designed to be a Rust layer built on top of
the wolfssl-sys crate (a C passthrough crate).
Structs§
- Aes256
Gcm - Struct for encrypt/decrypt using Aes256Gcm cipher
- Chacha20
Poly1305 Aead - Struct for encrypt/decrypt using Chacha20 cipher and authentication using Poly1305
- Context
- A wrapper around a
WOLFSSL_CTX. - Context
Builder - Produces a
Contextonce built. - Random
- Provides a way to extract random values from WolfSSL.
- Session
- Wraps a
WOLFSSLpointer, as well as the additional fields needed to write into, and read from, wolfSSL’s custom IO callbacks. - Session
Config - Stores configurations we want to initialize a
Sessionwith.
Enums§
- Aes256
GcmError - The failure result of an operation.
- Curve
Group - Corresponds to the various defined
WOLFSSL_*curves - Error
- The failure result of an operation.
- Error
Kind - Extracts an error message given a wolfssl error enum. Abstraction over WolfSSL errors
- IOCallback
Result - Result type to be returned by methods on
IOCallbacks - Method
- Corresponds to the various
wolf*_{client,server}_method()APIs - NewContext
Builder Error - Error creating a
ContextBuilderobject. - NewSession
Error - Error creating a
Sessionobject. - Poll
- The
Result::Okfor a non-blocking operation. - Protocol
Version - TLS/DTLS protocol versions
- Root
Certificate - Defines a CA certificate
- Secret
- Defines either a public or private key
- SslVerify
Mode - SSL Verification method
Ref:
https://www.wolfssl.com/doxygen/group__Setup.html#gaf9198658e31dd291088be18262ef2354
Traits§
- IOCallbacks
- The application provided IO callbacks documented at
EmbedRecieve(whose inputs and outputs we need to emulate). See alsowolfSSL_CTX_SetIORecvwhich is the best docs forwolfSSL_SSLSetIORecvandwolfSSL_SSLSetIOSend, which are what we actually use.
Functions§
- get_
wolfssl_ version_ string - Get WolfSSL version via
LIBWOLFSSL_VERSION_STRINGheader defined in wolfssl/version.h
Type Aliases§
- Result
- Describes an outcome that is synchronous.