uci: macro uci_alloc_element not in uci.h
authorJan Venekamp <jan@venekamp.net>
Sun, 20 Nov 2022 01:08:28 +0000 (02:08 +0100)
committerHauke Mehrtens <hauke@hauke-m.de>
Sat, 4 Mar 2023 18:39:32 +0000 (19:39 +0100)
The macro uci_alloc_element is in the public header file uci.h. However,
the macros output refers to uci_alloc_generic wich is in uci_internal.h
and not public. Thus, uci_alloc_element should be private as well and
moved to uci_internal.h.

Signed-off-by: Jan Venekamp <jan@venekamp.net>
uci.h
uci_internal.h

diff --git a/uci.h b/uci.h
index b385e2be964fc4a891833ede584fba6c8fa208cb..d0374f20a00bd4dfb5a900eb39b30beba1e50c55 100644 (file)
--- a/uci.h
+++ b/uci.h
@@ -613,16 +613,6 @@ BUILD_CAST(option)
 #define uci_to_option(ptr)  container_of(ptr, struct uci_option, e)
 #endif
 
-/**
- * uci_alloc_element: allocate a generic uci_element, reserve a buffer and typecast
- * @ctx: uci context
- * @type: {package,section,option}
- * @name: string containing the name of the element
- * @datasize: additional buffer size to reserve at the end of the struct
- */
-#define uci_alloc_element(ctx, type, name, datasize) \
-       uci_to_ ## type (uci_alloc_generic(ctx, uci_type_ ## type, name, sizeof(struct uci_ ## type) + datasize))
-
 #define uci_dataptr(ptr) \
        (((char *) ptr) + sizeof(*ptr))
 
index 34528f0495050e0652ec2c3a426eb0299daca4d4..ff4ee8cbb18c9a3e1813230dab99187fc3698124 100644 (file)
@@ -42,6 +42,9 @@ struct uci_parse_context
 #define pctx_char(pctx, i)     ((pctx)->buf[(i)])
 #define pctx_cur_char(pctx)    pctx_char(pctx, pctx_pos(pctx))
 
+#define uci_alloc_element(ctx, type, name, datasize) \
+       uci_to_ ## type (uci_alloc_generic(ctx, uci_type_ ## type, name, sizeof(struct uci_ ## type) + datasize))
+
 extern const char *uci_confdir;
 extern const char *uci_savedir;