Dir 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/