Line data Source code
1 : /* SPDX-FileCopyrightText: Copyright 2026 Cozens Software Solutions Limited
2 : * SPDX-License-Identifier: PolyForm-Noncommercial-1.0.0 OR LicenseRef-PolyForm-Internal-Use-1.0.0 OR LicenseRef-COSOSO-Commercial
3 : */
4 :
5 : #ifndef SOLIDSYSLOGSTREAMSENDERPRIVATE_H
6 : #define SOLIDSYSLOGSTREAMSENDERPRIVATE_H
7 :
8 : #include <stdbool.h>
9 : #include <stdint.h>
10 :
11 : #include "SolidSyslogError.h"
12 : #include "SolidSyslogPrival.h"
13 : #include "SolidSyslogSenderDefinition.h"
14 : #include "SolidSyslogStreamSender.h"
15 : #include "SolidSyslogStreamSenderErrors.h"
16 :
17 : struct SolidSyslogStreamSender
18 : {
19 : struct SolidSyslogSender Base;
20 : struct SolidSyslogStreamSenderConfig Config;
21 : bool Connected;
22 : bool DeliveryHealthy;
23 : uint32_t LastEndpointVersion;
24 : uint32_t LastStreamVersion;
25 : };
26 :
27 : void SolidSyslogStreamSender_Initialise(
28 : struct SolidSyslogSender* base,
29 : const struct SolidSyslogStreamSenderConfig* config
30 : );
31 : void SolidSyslogStreamSender_Cleanup(struct SolidSyslogSender* base);
32 :
33 17 : static inline void StreamSender_Report(
34 : enum SolidSyslogSeverity severity,
35 : uint16_t category,
36 : enum SolidSyslogStreamSenderErrors code
37 : )
38 : {
39 17 : SolidSyslog_Error(severity, &SolidSyslogStreamSenderErrorSource, category, (int32_t) code);
40 17 : }
41 :
42 : #endif /* SOLIDSYSLOGSTREAMSENDERPRIVATE_H */
|