Namespaces | |
CipherSuites | |
Standard cipher suite options The actual suites are implementation-specific. | |
Classes | |
class | CallbackValidator |
Validator class wrapping a user-provided callback delegate, plus optional parameter. More... | |
class | Certificate |
Implemented by SSL adapter to handle certificate operations. More... | |
class | Connection |
Implemented by SSL adapter to handle a connection. More... | |
class | Context |
Implemented by SSL adapter to create and manage SSL connections. More... | |
class | Factory |
Implemented by SSL adapter. More... | |
union | Fingerprint |
Various types of fingerprint. More... | |
class | FingerprintValidator |
Class template to validate any kind of fingerprint. More... | |
class | InputBuffer |
Wraps a pbuf for reading in chunks. More... | |
class | KeyCertPair |
Class to manage an SSL key certificate with optional password. More... | |
struct | Options |
Configurable options. More... | |
class | Session |
Handles all SSL activity for a TCP connection. More... | |
class | SessionId |
Manages buffer to store SSL Session ID. More... | |
class | Validator |
Base validator class. More... | |
class | ValidatorList |
Performs certificate validation. More... | |
Typedefs | |
using | ValidatorCallback = Delegate< bool(const Certificate *certificate, void *data)> |
Validator callback function. More... | |
Enumerations | |
enum | Alert { Alert::Invalid = -1, Alert::XX } |
Alert codes defined by the standard. More... | |
enum | CipherSuite : uint16_t { CipherSuite::XX } |
Cipher suite identifier. More... | |
enum | MaxBufferSize { MaxBufferSize::Default = 0, MaxBufferSize::B512, MaxBufferSize::K1, MaxBufferSize::K2, MaxBufferSize::K4, MaxBufferSize::K8, MaxBufferSize::K16 } |
Indicate to SSL how much memory (approximately) to commit for buffers. More... | |
Functions | |
String | getAlertString (Alert alert) |
String | toString (Certificate::RDN rdn) |
Obtain a string describing the given name component. More... | |
String | toString (CipherSuite id) |
Gets the name of the cipher suite. More... | |
size_t | maxBufferSizeToBytes (MaxBufferSize value) |
String | toString (const Options &options) |
String | toString (const SessionId &id) |
Variables | |
Factory * | factory |
Provided by ssl adapter, NULL if SSL is disabled. More... | |
Typedef Documentation
◆ ValidatorCallback
using Ssl::ValidatorCallback = typedef Delegate<bool(const Certificate* certificate, void* data)> |
Validator callback function.
- Parameters
-
ssl Contains certificate to validate (may be NULL) data Data for the callback to use
- Return values
-
bool true if validation succeeded
- Note
- Callback must ALWAYS release any allocated memory before returning. If called with certificate = NULL then just release memory and return false.
Enumeration Type Documentation
◆ Alert
|
strong |
Alert codes defined by the standard.
- See also
- See https://tools.ietf.org/html/rfc8446#page-85
Enumerator | |
---|---|
Invalid | Not an alert code. |
XX |
◆ CipherSuite
|
strong |
Cipher suite identifier.
The TLS standard specifies codes using two 8-bit values. We combine these into a single 16-bit value in MSB-LSB order.
For example:
TLS_RSA_WITH_AES_128_CBC_SHA = { 0x00, 0x2F } = 0x002F
- See also
- Refer to
CipherSuite.h
for defined values.
Enumerator | |
---|---|
XX |
◆ MaxBufferSize
|
strong |
Indicate to SSL how much memory (approximately) to commit for buffers.
A remote SSL server may require data transfers in large (16K) fragments, so restricting buffer sizes may cause connections to such servers to fail.
This must be balanced against other requirements for RAM by the application, therefore this setting can be used to restrict RAM usage.
- Note
- The ordinal value of this enumeration corresponds to SSL fragment size as defined in Maximum Fragment Length Negotiation https://tools.ietf.org/html/rfc6066
Enumerator | |
---|---|
Default | Let SSL implementation decide. |
B512 | 512 bytes |
K1 | 1024 bytes |
K2 | |
K4 | |
K8 | |
K16 |
Function Documentation
◆ getAlertString()
◆ maxBufferSizeToBytes()
size_t Ssl::maxBufferSizeToBytes | ( | MaxBufferSize | value | ) |
◆ toString() [1/4]
String Ssl::toString | ( | Certificate::RDN | rdn | ) |
Obtain a string describing the given name component.
◆ toString() [2/4]
String Ssl::toString | ( | CipherSuite | id | ) |
◆ toString() [3/4]
◆ toString() [4/4]
Variable Documentation
◆ factory
Factory* Ssl::factory |
Provided by ssl adapter, NULL if SSL is disabled.