Skip to content

wolfSSL platform

«interface»SolidSyslogWolfSslCredentialsWolfSslNullCredentialsWolfSslWolfSslPemBufferCredentialsWolfSslWolfSslStreamWolfSsl

Struct SolidSyslogWolfSslCredentials

ClassList > SolidSyslogWolfSslCredentials

  • #include <SolidSyslogWolfSslCredentialsDefinition.h>
struct SolidSyslogWolfSslCredentials
{
    bool (*Install)(
        struct SolidSyslogWolfSslCredentials* base,
        struct WOLFSSL_CTX* ctx,
        struct SolidSyslogTlsCredentialsInstalled* installed
    );
    void (*Release)(struct SolidSyslogWolfSslCredentials* base);
};

Detailed Description

Where a WolfSslStream's credentials come from.

Called once per connection each, so material is obtained only for a connection actually being made and released when it ends.

Public Attributes Documentation

Install

Install trust anchors, any pinned peer fingerprints, and - for mutual TLS - the client credential onto ctx , reporting throughinstalled what the stream cannot read back out ofctx .

bool(* SolidSyslogWolfSslCredentials::Install) (struct SolidSyslogWolfSslCredentials *base, struct WOLFSSL_CTX *ctx, struct SolidSyslogTlsCredentialsInstalled *installed);

Called from Open, after the transport connects and before the session is created from the context, so what is installed here is what the session inherits.

Return value:

  • false the material that authorises the peer could not be produced; the connection attempt fails and the sender retries on its next pass. A fault in the client's own credential is reported by the backend and returns true - it never stops delivery.

Release

Release what Install acquired.

void(* SolidSyslogWolfSslCredentials::Release) (struct SolidSyslogWolfSslCredentials *base);

Called from Close exactly once for every Install call, whatever that call returned, so a backend needs no rollback of its own and the integrator is always told when the credential window has closed. Must be a safe no-op when nothing was acquired.



The documentation for this class was generated from the following file Platform/WolfSsl/Interface/SolidSyslogWolfSslCredentialsDefinition.h