From 17c382d1c9d7236c101418060758d2296cc5e17e Mon Sep 17 00:00:00 2001 From: Laurent Bercot Date: Sat, 5 Aug 2023 11:51:25 +0000 Subject: Initial commit Signed-off-by: Laurent Bercot --- src/config/tipidee-config-internal.h | 59 ++++++++++++++++++++++++++++++++++++ 1 file changed, 59 insertions(+) create mode 100644 src/config/tipidee-config-internal.h (limited to 'src/config/tipidee-config-internal.h') diff --git a/src/config/tipidee-config-internal.h b/src/config/tipidee-config-internal.h new file mode 100644 index 0000000..e274f94 --- /dev/null +++ b/src/config/tipidee-config-internal.h @@ -0,0 +1,59 @@ +/* ISC license. */ + +#ifndef TIPIDEE_CONFIG_INTERNAL_H +#define TIPIDEE_CONFIG_INTERNAL_H + +#include +#include + +#include +#include +#include + +typedef struct confnode_s confnode, *confnode_ref ; +struct confnode_s +{ + uint32_t key ; + uint32_t keylen ; + uint32_t data ; + uint32_t datalen ; + uint32_t filepos ; + uint32_t line ; +} ; +#define CONFNODE_ZERO { .key = 0, .keylen = 0, .data = 0, .datalen = 0 } + +struct global_s +{ + stralloc storage ; +} ; +#define GLOBAL_ZERO { .storage = STRALLOC_ZERO } + +extern struct global_s g ; + + + /* confnode */ + +extern void confnode_start (confnode *, char const *, size_t, uint32_t) ; +extern void confnode_add (confnode *, char const *, size_t) ; +#define confnode_adds(node, s) confnode_add(node, (s), strlen(s)) +#define confnode_add0(node) confnode_add((node), "", 1) + + + /* conftree */ + +extern confnode const *conftree_search (char const *) ; +extern void conftree_add (confnode const *) ; +extern void conftree_update (confnode const *) ; +extern int conftree_write (cdbmaker *) ; + + + /* lexparse */ + +extern void conf_lexparse (buffer *, char const *) ; + + + /* defaults */ + +extern void conf_defaults (void) ; + +#endif -- cgit v1.3.1