From 907f1c64369095b5b2d5f6fb23a8b937720d94cc Mon Sep 17 00:00:00 2001 From: Laurent Bercot Date: Mon, 23 Oct 2023 12:30:58 +0000 Subject: More tipidee-config refactoring, headers functions are clean Signed-off-by: Laurent Bercot --- src/config/tipidee-config-internal.h | 23 ++++++++++++----------- 1 file changed, 12 insertions(+), 11 deletions(-) (limited to 'src/config/tipidee-config-internal.h') diff --git a/src/config/tipidee-config-internal.h b/src/config/tipidee-config-internal.h index 190ac45..3508771 100644 --- a/src/config/tipidee-config-internal.h +++ b/src/config/tipidee-config-internal.h @@ -5,6 +5,7 @@ #include #include +#include #include #include @@ -45,6 +46,12 @@ struct global_s extern struct global_s g ; + /* util */ + +extern int keycmp (void const *, void const *) ; /* for any struct starting with a string key */ +#define BSEARCH(type, key, array) bsearch(key, (array), sizeof(array)/sizeof(type), sizeof(type), &keycmp) + + /* node */ extern void node_start (stralloc *, node *, char const *, size_t, uint32_t) ; @@ -68,17 +75,18 @@ extern void confnode_add (node *, char const *, size_t) ; extern node const *conftree_search (char const *) ; extern void conftree_add (node const *) ; extern void conftree_update (node const *) ; + extern int conftree_write (cdbmaker *) ; /* headers */ -extern void header_start (node *, char const *, size_t, uint32_t) ; -extern void header_add (node *, char const *, size_t) ; +extern void header_canonize (char *) ; +extern int header_allowed (char const *) ; extern node const *headers_search (char const *) ; -extern void headers_add (node const *) ; -extern int headers_write (void) ; +extern void headers_add (char const *, char const *, uint8_t, size_t, uint32_t) ; +extern void headers_finish (void) ; /* lexparse */ @@ -90,11 +98,4 @@ extern void conf_lexparse (buffer *, char const *) ; extern void conf_defaults (void) ; - - /* headers */ - -extern node const *headers_search (char const *) ; -extern void headers_add (node const *) ; -extern void headers_finish (void) ; - #endif -- cgit v1.3.1