Skip to content

File SolidSyslogTlsStreamErrors.h

FileList > Core > Interface > SolidSyslogTlsStreamErrors.h

Portable detail codes for the TLS-stream role, shared by every TLS backend.

  • #include <stdint.h>
  • #include "SolidSyslogExternC.h"

Public Types Documentation

SolidSyslogTlsStreamErrors

Detail codes a TLS stream reports through event->Detail, shared by every TLS backend whichever library provides it.

enum SolidSyslogTlsStreamErrors {
    SOLIDSYSLOG_TLS_STREAM_ERROR_POOL_EXHAUSTED,
    SOLIDSYSLOG_TLS_STREAM_ERROR_UNKNOWN_DESTROY,
    SOLIDSYSLOG_TLS_STREAM_ERROR_LIBRARY_OUT_OF_MEMORY,
    SOLIDSYSLOG_TLS_STREAM_ERROR_NULL_CONFIG,
    SOLIDSYSLOG_TLS_STREAM_ERROR_NULL_TRANSPORT,
    SOLIDSYSLOG_TLS_STREAM_ERROR_NULL_SLEEP,
    SOLIDSYSLOG_TLS_STREAM_ERROR_NULL_CREDENTIALS,
    SOLIDSYSLOG_TLS_STREAM_ERROR_NULL_RNG,
    SOLIDSYSLOG_TLS_STREAM_ERROR_CONTEXT_INIT_FAILED,
    SOLIDSYSLOG_TLS_STREAM_ERROR_DEFAULTS_NOT_APPLIED,
    SOLIDSYSLOG_TLS_STREAM_ERROR_SESSION_INIT_FAILED,
    SOLIDSYSLOG_TLS_STREAM_ERROR_SERVER_NAME_NOT_SET,
    SOLIDSYSLOG_TLS_STREAM_ERROR_SERVER_NAME_NOT_APPLIED,
    SOLIDSYSLOG_TLS_STREAM_ERROR_NO_PEER_AUTHORISATION,
    SOLIDSYSLOG_TLS_STREAM_ERROR_FINGERPRINT_MALFORMED,
    SOLIDSYSLOG_TLS_STREAM_ERROR_FINGERPRINT_SHA1,
    SOLIDSYSLOG_TLS_STREAM_ERROR_FINGERPRINT_DIGEST_UNAVAILABLE,
    SOLIDSYSLOG_TLS_STREAM_ERROR_CIPHER_POLICY_REJECTED,
    SOLIDSYSLOG_TLS_STREAM_ERROR_HANDSHAKE_REJECTED,
    SOLIDSYSLOG_TLS_STREAM_ERROR_HANDSHAKE_TIMEOUT,
    SOLIDSYSLOG_TLS_STREAM_ERROR_PEER_CERTIFICATE_UNTRUSTED,
    SOLIDSYSLOG_TLS_STREAM_ERROR_PEER_NAME_MISMATCHED,
    SOLIDSYSLOG_TLS_STREAM_ERROR_PEER_CERTIFICATE_EXPIRED,
    SOLIDSYSLOG_TLS_STREAM_ERROR_PEER_CERTIFICATE_NOT_YET_VALID,
    SOLIDSYSLOG_TLS_STREAM_ERROR_PEER_FINGERPRINT_MISMATCHED,
    SOLIDSYSLOG_TLS_STREAM_ERROR_ALREADY_OPEN,
    SOLIDSYSLOG_TLS_STREAM_ERROR_MAX
};

A handler that matches on these reacts to a fault identically whichever library produced it, and keeps working when the backend is swapped.

event->Source still names the backend that spoke, for diagnosis. Which of these codes a given backend can raise is a property of that backend and is stated on its own page; a code it never raises is simply one a handler never sees.


Public Functions Documentation

SolidSyslogTlsStreamErrors_Name

The detail's name, read beside the category's: LIBRARY_OUT_OF_MEMORY for SOLIDSYSLOG_TLS_STREAM_ERROR_LIBRARY_OUT_OF_MEMORY.

const char * SolidSyslogTlsStreamErrors_Name (
    int32_t detail
) 

NULL for a code outside the enum.



The documentation for this class was generated from the following file Core/Interface/SolidSyslogTlsStreamErrors.h