Skip to content

Dir Core/Interface

FileList > Core > Interface

Files

Type Name
file ExternC.h
The C-linkage guard macros (EXTERN_C_BEGIN / EXTERN_C_END) that wrap every public header so a C++ consumer links the declarations with C linkage.
file SolidSyslog.h
The application logging API: SolidSyslog_Log / _LogWithSd to emit an event, SolidSyslog_Service to drive delivery, and the SolidSyslogMessage struct.
file SolidSyslogAddress.h
The opaque resolved-destination handle a Resolver writes and a Datagram or Stream reads; the concrete layout is private to each platform's sources.
file SolidSyslogAtomicCounter.h
The atomic-counter role: hand out the next sequenceId (Increment), wrap-aware over [1, 2^31 - 1] and never 0 per RFC 5424 §7.3.1.
file SolidSyslogAtomicCounterDefinition.h
The AtomicCounter vtable (Increment) — the contract an implementor fills in (the AtomicCounter extension point).
file SolidSyslogBlockDevice.h
The block-device role: block-indexed storage (Acquire / Dispose / Exists / Read / Append / WriteAt / Size / GetBlockSize) beneath a BlockStore.
file SolidSyslogBlockDeviceDefinition.h
The BlockDevice vtable (Acquire / Dispose / Exists / Read / Append / WriteAt / Size / GetBlockSize) — the contract an implementor fills in (the BlockDevice extension point).
file SolidSyslogBlockStore.h
A store-and-forward Store backed by a BlockDevice: records are appended to the current write block, and once a block fills the write rolls to the next, giving durable retention across a restart.
file SolidSyslogBlockStoreErrors.h
Error codes and Source identity for the BlockStore.
file SolidSyslogBuffer.h
The buffer role: producer Write / consumer Read that decouples SolidSyslog_Log from Service.
file SolidSyslogBufferCategories.h
Portable category constants (uint16_t macros) for the Buffer role: SOLIDSYSLOG_CAT_BUFFER_BACKEND_FAILED.
file SolidSyslogBufferDefinition.h
The Buffer vtable (Write / Read) — the contract an implementor fills in (the Buffer extension point).
file SolidSyslogCircularBuffer.h
An in-memory ring Buffer that decouples Log (enqueue) from Service (drain), backed entirely by caller-supplied storage — no allocation of its own.
file SolidSyslogCircularBufferErrors.h
Error codes and Source identity for the CircularBuffer.
file SolidSyslogConfig.h
The setup-time wiring: the SolidSyslogConfig struct and SolidSyslog_Create / _Destroy that build and release a logger from it.
file SolidSyslogConfigLock.h
The config-time critical-section injection pair guarding every pool Create/Destroy slot-walk; the no-op default suits single-task setup.
file SolidSyslogCrc16.h
CRC-16/CCITT-FALSE checksum (poly 0x1021, init 0xFFFF, no reflection, no final XOR; a.k.a.
file SolidSyslogCrc16Policy.h
A SecurityPolicy that appends a two-byte CRC-16 trailer to each stored record.
file SolidSyslogDatagram.h
The datagram role: connectionless send of one message to an address (Open / SendTo / Close), with a path-MTU hint (MaxPayload).
file SolidSyslogDatagramDefinition.h
The Datagram vtable (Open / SendTo / MaxPayload / Close) — the unconnected (UDP) transport contract an implementor fills in (the Datagram extension point).
file SolidSyslogEndpoint.h
The destination a sender is directed at (host sink + port) and the callbacks a sender uses to pull it and to detect when it changes.
file SolidSyslogEndpointHost.h
The value sink an endpoint callback writes the destination host into — copied verbatim so a DNS name or IP literal reaches the resolver intact.
file SolidSyslogError.h
The error-reporting API: SolidSyslog_SetErrorHandler to install a handler, SolidSyslog_Error to emit, and the event's Severity / Source / Category / Detail axes a handler reads.
file SolidSyslogErrorCategory.h
The portable error-category axis: the universal lifecycle category macros and the per-role base ranges a handler switches on or an emit site picks.
file SolidSyslogErrors.h
Error codes and Source identity for the SolidSyslog instance.
file SolidSyslogFile.h
The file role: byte-file I/O (Open / Close / IsOpen / Read / Write / SeekTo / Size / Truncate / Exists / Delete) backing the store.
file SolidSyslogFileBlockDevice.h
A BlockDevice that maps each block to its own file, named by a caller-given prefix plus a two-digit block index and ".log" (block 0 is "<prefix>00.log").
file SolidSyslogFileBlockDeviceErrors.h
Error codes and Source identity for the FileBlockDevice.
file SolidSyslogFileDefinition.h
The File vtable (Open / Close / IsOpen / Read / Write / SeekTo / Size / Truncate / Exists / Delete) — the contract a porter fills in (the File extension point).
file SolidSyslogHeaderField.h
The value sink a callback writes an RFC 5424 header field (HOSTNAME / APP-NAME / PROCID) into; the sink owns the charset and the field width.
file SolidSyslogHeaderFieldFunction.h
The header-field callback typedef the integrator supplies to SolidSyslogConfig for HOSTNAME / APP-NAME / PROCID.
file SolidSyslogKeyFunction.h
The on-demand secret-key callback typedef the integrator supplies to a keyed SecurityPolicy, so the key never lives on the policy instance.
file SolidSyslogMetaSd.h
A StructuredData source for the RFC 5424 §7.3 "meta" SD-ELEMENT (IANA SD-ID, so no enterprise-number suffix), emitted on every message the owning logger formats.
file SolidSyslogMetaSdErrors.h
Error codes and Source identity for the MetaSd.
file SolidSyslogMutex.h
The mutex role: mutual exclusion (Lock / Unlock) around buffer and pool critical sections.
file SolidSyslogMutexDefinition.h
The Mutex vtable (Lock / Unlock) — the contract an implementor fills in (the Mutex extension point).
file SolidSyslogNullAtomicCounter.h
The no-op AtomicCounter Null object: Increment returns 1U unconditionally, the safest value when a real counter is unavailable (RFC 5424 §7.3.1 forbids a sequenceId of 0).
file SolidSyslogNullBlockDevice.h
The no-op BlockDevice Null object: every method reports a device that does not exist — Acquire, Dispose, Exists, Read, Append and WriteAt return false, Size and GetBlockSize return 0.
file SolidSyslogNullBuffer.h
The no-op Buffer Null object: Write swallows the record, Read returns false (nothing to deliver) so the Service algorithm sees an empty buffer and stops draining.
file SolidSyslogNullDatagram.h
The no-op Datagram Null object: SendTo returns SENT (drops the datagram on the floor so the Store does not fill with undeliverables), MaxPayload returns the IPv6-safe default, Open and Close are no-ops.
file SolidSyslogNullFile.h
The no-op File Null object: Open, IsOpen, Read and Exists return false (consumers take their error path), Write and Delete return true (success reported vacuously), SeekTo, Truncate and Close are no-ops, Size returns 0.
file SolidSyslogNullMutex.h
The no-op Mutex Null object: Lock and Unlock are no-ops, giving unsynchronised access for single-task targets that need no mutual exclusion.
file SolidSyslogNullResolver.h
The no-op Resolver Null object: Resolve returns false (could not resolve) so the caller's existing unresolved-host error path runs naturally.
file SolidSyslogNullSd.h
The no-op Structured Data Null object: Format writes nothing, so this SD slot contributes no SD-ELEMENT to the message.
file SolidSyslogNullSecurityPolicy.h
The no-op SecurityPolicy Null object: pass-through integrity — Seal and Open both return true without touching the record, adding no integrity data and accepting every record.
file SolidSyslogNullSender.h
The no-op Sender Null object: Send returns true (drops the record on the floor so the Store does not fill with undeliverables), Disconnect is a no-op.
file SolidSyslogNullStore.h
The no-op Store Null object (no store-and-forward): Write returns false and IsTransient returns true, so the Service algorithm falls through to a direct send instead of buffering.
file SolidSyslogNullStream.h
The no-op Stream Null object: Send returns true (drops the bytes on the floor so the Store does not fill with undeliverables), Read returns 0 (would-block, so the caller does not tear the connection down), Open and Close are no-ops.
file SolidSyslogOriginSd.h
A StructuredData source for the RFC 5424 §7.2 "origin" SD-ELEMENT (IANA SD-ID, so no enterprise-number suffix), emitted on every message the owning logger formats.
file SolidSyslogOriginSdErrors.h
Error codes and Source identity for the OriginSd.
file SolidSyslogPassthroughBuffer.h
The no-queue Buffer.
file SolidSyslogPassthroughBufferErrors.h
Error codes and Source identity for the PassthroughBuffer.
file SolidSyslogPrival.h
The RFC 5424 facility and severity enums that compose a message's PRIVAL.
file SolidSyslogResolver.h
The resolver role: turn a host/port into a destination address (Resolve) for a later Datagram or Stream to send to.
file SolidSyslogResolverCategories.h
Portable category constants (uint16_t macros) for the Resolver role: SOLIDSYSLOG_CAT_RESOLVER_RESOLVE_FAILED.
file SolidSyslogResolverDefinition.h
The Resolver vtable (Resolve) — the host-to-address contract an implementor fills in (the Resolver extension point).
file SolidSyslogSdElement.h
The SD authoring API for one [SD-ID PARAM="value"...] element: _Begin / _Param / _End, which own the brackets and SD-NAME charset so the author writes only names and values.
file SolidSyslogSdValue.h
The per-param value sink of the SD authoring API: streams a PARAM value with RFC 5424 escaping applied by the library, so an author cannot break SD framing.
file SolidSyslogSdValueFunction.h
The SD-value callback typedef the integrator supplies for dynamic PARAM values (e.g.
file SolidSyslogSecurityPolicyCategories.h
Portable category constants (uint16_t macros) for the SecurityPolicy role: SOLIDSYSLOG_CAT_SECURITYPOLICY_KEY_UNAVAILABLE / _SEAL_FAILED / _OPEN_FAILED.
file SolidSyslogSecurityPolicyDefinition.h
The SecurityPolicy vtable (SealRecord / OpenRecord) — the at-rest integrity/confidentiality contract an implementor fills in (the SecurityPolicy extension point).
file SolidSyslogSender.h
The sender role: deliver a framed message (Send) / drop the connection (Disconnect).
file SolidSyslogSenderCategories.h
Portable category constants (uint16_t macros) for the Sender role: SOLIDSYSLOG_CAT_SENDER_DELIVERY_FAILED / _DELIVERY_RESTORED.
file SolidSyslogSenderDefinition.h
The Sender vtable (Send / Disconnect) — the contract an implementor fills in (the Sender extension point).
file SolidSyslogServiceStatus.h
The advisory servicing-hint enum SolidSyslog_Service returns to drive a host loop (idle / ready / blocked / halted).
file SolidSyslogSleep.h
The millisecond-sleep callback typedef the integrator injects to drive the bounded wait-and-retry loops without busy-spinning.
file SolidSyslogStore.h
The store role: retain unsent records (Write) and replay them in order via a read cursor (ReadNextUnsent / MarkSent), so a send failure never drops a stored record — it stays for retry.
file SolidSyslogStoreDefinition.h
The Store vtable (Write / ReadNextUnsent / MarkSent / HasUnsent / IsHalted / GetTotalBytes / GetUsedBytes / IsTransient) — the store-and-forward contract an implementor fills in (the Store extension point).
file SolidSyslogStream.h
The stream role: connection-oriented byte transport (Open / Send / Read / Close) for octet-framed delivery.
file SolidSyslogStreamDefinition.h
The Stream vtable (Open / Send / Read / Close) — the byte-stream (TCP, TLS over TCP) transport contract an implementor fills in (the Stream extension point).
file SolidSyslogStreamSender.h
A Sender that delivers each message octet-framed (RFC 6587 octet-counting: a decimal length, a space, then the message bytes) over any injected Stream — plain TCP, TLS, or a caller-supplied byte transport.
file SolidSyslogStreamSenderErrors.h
Error codes and Source identity for the StreamSender.
file SolidSyslogStructuredData.h
The structured-data role: emit one or more RFC 5424 SD-ELEMENTs into a message (Format).
file SolidSyslogStructuredDataDefinition.h
The StructuredData vtable (Format) — the SD-source contract an implementor fills in (the StructuredData extension point).
file SolidSyslogSwitchingSender.h
A composite Sender that fronts several inner senders and routes each message through the one the Selector picks — the wiring for dual-SIEM fan-out or an active/standby failover stack.
file SolidSyslogSwitchingSenderErrors.h
Error codes and Source identity for the SwitchingSender.
file SolidSyslogTcpConnectTimeoutFunction.h
The callback typedef the integrator installs on a TCP stream config to supply the bounded-connect deadline per attempt (runtime-tunable).
file SolidSyslogTimeQuality.h
The clock-quality data (tzKnown / isSynced / syncAccuracy) and the callback that supplies it, feeding the RFC 5424 "timeQuality" SD-ELEMENT.
file SolidSyslogTimeQualitySd.h
A StructuredData source for the RFC 5424 §7.1 "timeQuality" SD-ELEMENT (IANA SD-ID, so no enterprise-number suffix), emitted on every message the owning logger formats.
file SolidSyslogTimeQualitySdErrors.h
Error codes and Source identity for the TimeQualitySd.
file SolidSyslogTimestamp.h
The broken-down timestamp struct and the SolidSyslogClockFunction that fills it, supplying the RFC 5424 TIMESTAMP field.
file SolidSyslogTlsHandshakeTimeoutFunction.h
The callback typedef the integrator installs on a TLS stream config to supply the bounded-handshake deadline per attempt (runtime-tunable).
file SolidSyslogTlsStreamCategories.h
Portable category constants (uint16_t macros) for the TLS-stream role: SOLIDSYSLOG_CAT_TLSSTREAM_INIT_FAILED / _HANDSHAKE_FAILED.
file SolidSyslogTransport.h
The transport selector enum (UDP / TCP) and the IANA default-port convenience constants.
file SolidSyslogTunables.h
The compile-time tunables umbrella: pulls the optional user override first, then SolidSyslogTunablesDefaults.h so unset knobs fall back to defaults.
file SolidSyslogTunablesDefaults.h
The default values for every compile-time tunable — pool sizes, message / path / integrity limits, and timeouts — each #ifndef-guarded so a user override wins.
file SolidSyslogUdpPayload.h
UDP payload sizing helpers: the usable payload for a given MTU and the UTF-8-safe trim used to fit a message into a datagram without splitting a codepoint.
file SolidSyslogUdpSender.h
A Sender that transmits each message as a single UDP datagram over the injected Datagram, resolving the endpoint and opening the socket lazily on the first Send and re-resolving when the endpoint version changes.
file SolidSyslogUdpSenderErrors.h
Error codes and Source identity for the UdpSender.

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