Skip to content

File SolidSyslogTunablesDefaults.h

File List > Core > Interface > SolidSyslogTunablesDefaults.h

Go to the documentation of this file

#ifndef SOLIDSYSLOG_TUNABLES_DEFAULTS_H
#define SOLIDSYSLOG_TUNABLES_DEFAULTS_H

// IWYU pragma: private, include "SolidSyslogTunables.h"
// Defaults are reached through the SolidSyslogTunables.h umbrella so the optional
// SOLIDSYSLOG_USER_TUNABLES_FILE override gets a chance to win first.

/*
 * Pool-size tunables are named by ROLE, not by platform or vendor.
 *
 * A build links exactly one implementation of each platform/vendor-selected
 * role (one TCP stream backend, one datagram backend, one mutex, one crypto
 * vendor, ...), so a single role tunable serves whichever implementation is
 * compiled in — the integrator reasons about "how many TCP streams", never
 * "how many POSIX streams". SOLIDSYSLOG_ADDRESS_POOL_SIZE established this
 * pattern; the role blocks below follow it.
 *
 * The pool counts INSTANCES, not implementations. If a future build ever
 * wires two implementations of the same role into one executable (e.g. a
 * numeric AND a DNS resolver, or two crypto vendors), size that role's pool
 * to the SUM of the concurrent instances.
 */

#ifndef SOLIDSYSLOG_MAX_MESSAGE_SIZE
#define SOLIDSYSLOG_MAX_MESSAGE_SIZE 2048U 
#endif

#if SOLIDSYSLOG_MAX_MESSAGE_SIZE < 64
#error "SOLIDSYSLOG_MAX_MESSAGE_SIZE must be >= 64"
#endif

#ifndef SOLIDSYSLOG_MAX_PATH_SIZE
#define SOLIDSYSLOG_MAX_PATH_SIZE 128U
#endif

#if SOLIDSYSLOG_MAX_PATH_SIZE < 32
#error "SOLIDSYSLOG_MAX_PATH_SIZE must be >= 32"
#endif

#ifndef SOLIDSYSLOG_MAX_INTEGRITY_SIZE
#define SOLIDSYSLOG_MAX_INTEGRITY_SIZE 32U
#endif

#if SOLIDSYSLOG_MAX_INTEGRITY_SIZE < 4
#error "SOLIDSYSLOG_MAX_INTEGRITY_SIZE must be >= 4"
#endif

#ifndef SOLIDSYSLOG_FILE_DEFAULT_BLOCK_SIZE
#define SOLIDSYSLOG_FILE_DEFAULT_BLOCK_SIZE 8192U
#endif

#if SOLIDSYSLOG_FILE_DEFAULT_BLOCK_SIZE < (SOLIDSYSLOG_MAX_MESSAGE_SIZE + SOLIDSYSLOG_MAX_INTEGRITY_SIZE + 5)
#error \
    "SOLIDSYSLOG_FILE_DEFAULT_BLOCK_SIZE must hold one worst-case record (MAX_MESSAGE_SIZE + MAX_INTEGRITY_SIZE + 5 framing bytes)"
#endif

#ifndef SOLIDSYSLOG_POOL_SIZE
#define SOLIDSYSLOG_POOL_SIZE 1U
#endif

#if SOLIDSYSLOG_POOL_SIZE < 1
#error "SOLIDSYSLOG_POOL_SIZE must be >= 1"
#endif

#ifndef SOLIDSYSLOG_CIRCULAR_BUFFER_POOL_SIZE
#define SOLIDSYSLOG_CIRCULAR_BUFFER_POOL_SIZE 1U
#endif

#if SOLIDSYSLOG_CIRCULAR_BUFFER_POOL_SIZE < 1
#error "SOLIDSYSLOG_CIRCULAR_BUFFER_POOL_SIZE must be >= 1"
#endif

#ifndef SOLIDSYSLOG_MUTEX_POOL_SIZE
#define SOLIDSYSLOG_MUTEX_POOL_SIZE 1U
#endif

#if SOLIDSYSLOG_MUTEX_POOL_SIZE < 1
#error "SOLIDSYSLOG_MUTEX_POOL_SIZE must be >= 1"
#endif

#ifndef SOLIDSYSLOG_DATAGRAM_POOL_SIZE
#define SOLIDSYSLOG_DATAGRAM_POOL_SIZE 1U
#endif

#if SOLIDSYSLOG_DATAGRAM_POOL_SIZE < 1
#error "SOLIDSYSLOG_DATAGRAM_POOL_SIZE must be >= 1"
#endif

#ifndef SOLIDSYSLOG_RESOLVER_POOL_SIZE
#define SOLIDSYSLOG_RESOLVER_POOL_SIZE 1U
#endif

#if SOLIDSYSLOG_RESOLVER_POOL_SIZE < 1
#error "SOLIDSYSLOG_RESOLVER_POOL_SIZE must be >= 1"
#endif

#ifndef SOLIDSYSLOG_FILE_POOL_SIZE
#define SOLIDSYSLOG_FILE_POOL_SIZE 1U
#endif

#if SOLIDSYSLOG_FILE_POOL_SIZE < 1
#error "SOLIDSYSLOG_FILE_POOL_SIZE must be >= 1"
#endif

#ifndef SOLIDSYSLOG_TCP_STREAM_POOL_SIZE
#define SOLIDSYSLOG_TCP_STREAM_POOL_SIZE 2U
#endif

#if SOLIDSYSLOG_TCP_STREAM_POOL_SIZE < 1
#error "SOLIDSYSLOG_TCP_STREAM_POOL_SIZE must be >= 1"
#endif

#ifndef SOLIDSYSLOG_POSIX_MESSAGE_QUEUE_BUFFER_POOL_SIZE
#define SOLIDSYSLOG_POSIX_MESSAGE_QUEUE_BUFFER_POOL_SIZE 1U
#endif

#if SOLIDSYSLOG_POSIX_MESSAGE_QUEUE_BUFFER_POOL_SIZE < 1
#error "SOLIDSYSLOG_POSIX_MESSAGE_QUEUE_BUFFER_POOL_SIZE must be >= 1"
#endif

#ifndef SOLIDSYSLOG_PASSTHROUGH_BUFFER_POOL_SIZE
#define SOLIDSYSLOG_PASSTHROUGH_BUFFER_POOL_SIZE 1U
#endif

#if SOLIDSYSLOG_PASSTHROUGH_BUFFER_POOL_SIZE < 1
#error "SOLIDSYSLOG_PASSTHROUGH_BUFFER_POOL_SIZE must be >= 1"
#endif

#ifndef SOLIDSYSLOG_UDP_SENDER_POOL_SIZE
#define SOLIDSYSLOG_UDP_SENDER_POOL_SIZE 1U
#endif

#if SOLIDSYSLOG_UDP_SENDER_POOL_SIZE < 1
#error "SOLIDSYSLOG_UDP_SENDER_POOL_SIZE must be >= 1"
#endif

#ifndef SOLIDSYSLOG_SWITCHING_SENDER_POOL_SIZE
#define SOLIDSYSLOG_SWITCHING_SENDER_POOL_SIZE 1U
#endif

#if SOLIDSYSLOG_SWITCHING_SENDER_POOL_SIZE < 1
#error "SOLIDSYSLOG_SWITCHING_SENDER_POOL_SIZE must be >= 1"
#endif

#ifndef SOLIDSYSLOG_STREAM_SENDER_POOL_SIZE
#define SOLIDSYSLOG_STREAM_SENDER_POOL_SIZE 2U
#endif

#if SOLIDSYSLOG_STREAM_SENDER_POOL_SIZE < 1
#error "SOLIDSYSLOG_STREAM_SENDER_POOL_SIZE must be >= 1"
#endif

#ifndef SOLIDSYSLOG_BLOCK_STORE_POOL_SIZE
#define SOLIDSYSLOG_BLOCK_STORE_POOL_SIZE 1U
#endif

#if SOLIDSYSLOG_BLOCK_STORE_POOL_SIZE < 1
#error "SOLIDSYSLOG_BLOCK_STORE_POOL_SIZE must be >= 1"
#endif

#ifndef SOLIDSYSLOG_FILE_BLOCK_DEVICE_POOL_SIZE
#define SOLIDSYSLOG_FILE_BLOCK_DEVICE_POOL_SIZE 1U
#endif

#if SOLIDSYSLOG_FILE_BLOCK_DEVICE_POOL_SIZE < 1
#error "SOLIDSYSLOG_FILE_BLOCK_DEVICE_POOL_SIZE must be >= 1"
#endif

#ifndef SOLIDSYSLOG_META_SD_POOL_SIZE
#define SOLIDSYSLOG_META_SD_POOL_SIZE 1U
#endif

#if SOLIDSYSLOG_META_SD_POOL_SIZE < 1
#error "SOLIDSYSLOG_META_SD_POOL_SIZE must be >= 1"
#endif

#ifndef SOLIDSYSLOG_TIME_QUALITY_SD_POOL_SIZE
#define SOLIDSYSLOG_TIME_QUALITY_SD_POOL_SIZE 1U
#endif

#if SOLIDSYSLOG_TIME_QUALITY_SD_POOL_SIZE < 1
#error "SOLIDSYSLOG_TIME_QUALITY_SD_POOL_SIZE must be >= 1"
#endif

#ifndef SOLIDSYSLOG_ORIGIN_SD_POOL_SIZE
#define SOLIDSYSLOG_ORIGIN_SD_POOL_SIZE 1U
#endif

#if SOLIDSYSLOG_ORIGIN_SD_POOL_SIZE < 1
#error "SOLIDSYSLOG_ORIGIN_SD_POOL_SIZE must be >= 1"
#endif

#ifndef SOLIDSYSLOG_LWIP_RAW_TCP_CONNECT_POLL_MS
#define SOLIDSYSLOG_LWIP_RAW_TCP_CONNECT_POLL_MS 10U
#endif

#if SOLIDSYSLOG_LWIP_RAW_TCP_CONNECT_POLL_MS < 1
#error "SOLIDSYSLOG_LWIP_RAW_TCP_CONNECT_POLL_MS must be >= 1"
#endif

#ifndef SOLIDSYSLOG_DNS_RESOLVE_TIMEOUT_MS
#define SOLIDSYSLOG_DNS_RESOLVE_TIMEOUT_MS 5000U
#endif

#if SOLIDSYSLOG_DNS_RESOLVE_TIMEOUT_MS < 1
#error "SOLIDSYSLOG_DNS_RESOLVE_TIMEOUT_MS must be >= 1"
#endif

#ifndef SOLIDSYSLOG_LWIP_RAW_DNS_RESOLVE_POLL_MS
#define SOLIDSYSLOG_LWIP_RAW_DNS_RESOLVE_POLL_MS 10U
#endif

#if SOLIDSYSLOG_LWIP_RAW_DNS_RESOLVE_POLL_MS < 1
#error "SOLIDSYSLOG_LWIP_RAW_DNS_RESOLVE_POLL_MS must be >= 1"
#endif

#ifndef SOLIDSYSLOG_LWIP_RAW_TCP_RX_QUEUE_SIZE
#define SOLIDSYSLOG_LWIP_RAW_TCP_RX_QUEUE_SIZE 8U
#endif

#if SOLIDSYSLOG_LWIP_RAW_TCP_RX_QUEUE_SIZE < 1
#error "SOLIDSYSLOG_LWIP_RAW_TCP_RX_QUEUE_SIZE must be >= 1"
#endif

#ifndef SOLIDSYSLOG_ATOMIC_COUNTER_POOL_SIZE
#define SOLIDSYSLOG_ATOMIC_COUNTER_POOL_SIZE 1U
#endif

#if SOLIDSYSLOG_ATOMIC_COUNTER_POOL_SIZE < 1
#error "SOLIDSYSLOG_ATOMIC_COUNTER_POOL_SIZE must be >= 1"
#endif

#ifndef SOLIDSYSLOG_TLS_STREAM_POOL_SIZE
#define SOLIDSYSLOG_TLS_STREAM_POOL_SIZE 1U
#endif

#if SOLIDSYSLOG_TLS_STREAM_POOL_SIZE < 1
#error "SOLIDSYSLOG_TLS_STREAM_POOL_SIZE must be >= 1"
#endif

#ifndef SOLIDSYSLOG_HMAC_SHA256_POLICY_POOL_SIZE
#define SOLIDSYSLOG_HMAC_SHA256_POLICY_POOL_SIZE 1U
#endif

#if SOLIDSYSLOG_HMAC_SHA256_POLICY_POOL_SIZE < 1
#error "SOLIDSYSLOG_HMAC_SHA256_POLICY_POOL_SIZE must be >= 1"
#endif

#ifndef SOLIDSYSLOG_AES_GCM_POLICY_POOL_SIZE
#define SOLIDSYSLOG_AES_GCM_POLICY_POOL_SIZE 1U
#endif

#if SOLIDSYSLOG_AES_GCM_POLICY_POOL_SIZE < 1
#error "SOLIDSYSLOG_AES_GCM_POLICY_POOL_SIZE must be >= 1"
#endif

#ifndef SOLIDSYSLOG_MAX_HMAC_KEY_SIZE
#define SOLIDSYSLOG_MAX_HMAC_KEY_SIZE 64U
#endif

#if SOLIDSYSLOG_MAX_HMAC_KEY_SIZE < 32
#error "SOLIDSYSLOG_MAX_HMAC_KEY_SIZE must be >= 32"
#endif

#ifndef SOLIDSYSLOG_ADDRESS_POOL_SIZE
#define SOLIDSYSLOG_ADDRESS_POOL_SIZE 3U
#endif

#if SOLIDSYSLOG_ADDRESS_POOL_SIZE < 1
#error "SOLIDSYSLOG_ADDRESS_POOL_SIZE must be >= 1"
#endif

#ifndef SOLIDSYSLOG_TCP_CONNECT_TIMEOUT_MS
#define SOLIDSYSLOG_TCP_CONNECT_TIMEOUT_MS 200U
#endif

#if SOLIDSYSLOG_TCP_CONNECT_TIMEOUT_MS < 1
#error "SOLIDSYSLOG_TCP_CONNECT_TIMEOUT_MS must be >= 1"
#endif

#ifndef SOLIDSYSLOG_TLS_HANDSHAKE_TIMEOUT_MS
#define SOLIDSYSLOG_TLS_HANDSHAKE_TIMEOUT_MS 5000U
#endif

#if SOLIDSYSLOG_TLS_HANDSHAKE_TIMEOUT_MS < 1
#error "SOLIDSYSLOG_TLS_HANDSHAKE_TIMEOUT_MS must be >= 1"
#endif

#endif /* SOLIDSYSLOG_TUNABLES_DEFAULTS_H */