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 SOLIDSYSLOGLWIPSOCKETADDRESSPRIVATE_H
6 : #define SOLIDSYSLOGLWIPSOCKETADDRESSPRIVATE_H
7 :
8 : #include "lwip/sockets.h"
9 :
10 : #include <stdint.h>
11 :
12 : #include "SolidSyslogError.h"
13 : #include "SolidSyslogLwipSocketAddressErrors.h"
14 : #include "SolidSyslogPrival.h"
15 :
16 : struct SolidSyslogAddress;
17 :
18 : struct SolidSyslogLwipSocketAddress
19 : {
20 : struct sockaddr_in Sockaddr;
21 : };
22 :
23 : void SolidSyslogLwipSocketAddress_Initialise(struct SolidSyslogAddress* base);
24 : void SolidSyslogLwipSocketAddress_Cleanup(struct SolidSyslogAddress* base);
25 :
26 69 : static inline struct sockaddr_in* SolidSyslogLwipSocketAddress_AsSockaddrIn(struct SolidSyslogAddress* base)
27 : {
28 69 : return &((struct SolidSyslogLwipSocketAddress*) base)->Sockaddr;
29 : }
30 :
31 68 : static inline const struct sockaddr_in* SolidSyslogLwipSocketAddress_AsConstSockaddrIn(
32 : const struct SolidSyslogAddress* base
33 : )
34 : {
35 68 : return &((const struct SolidSyslogLwipSocketAddress*) base)->Sockaddr;
36 : }
37 :
38 6 : static inline void LwipSocketAddress_Report(
39 : enum SolidSyslogSeverity severity,
40 : uint16_t category,
41 : enum SolidSyslogAddressErrors code
42 : )
43 : {
44 6 : SolidSyslog_Error(severity, &SolidSyslogLwipSocketAddressErrorSource, category, (int32_t) code);
45 6 : }
46 :
47 : #endif /* SOLIDSYSLOGLWIPSOCKETADDRESSPRIVATE_H */
|