]> pilppa.com Git - uci.git/commitdiff
make more functions available externally
authorFelix Fietkau <nbd@openwrt.org>
Tue, 12 Feb 2008 11:38:41 +0000 (12:38 +0100)
committerFelix Fietkau <nbd@openwrt.org>
Tue, 12 Feb 2008 11:38:41 +0000 (12:38 +0100)
history.c
libuci.c
uci_internal.h

index c46c408c73ff4f2a0aabcc27fedec3ff3d0eb564..8935a3fca72315534aa2bbc88424cf6d687ff06b 100644 (file)
--- a/history.c
+++ b/history.c
@@ -27,7 +27,7 @@
 #include <ctype.h>
 
 /* record a change that was done to a package */
-static void
+void
 uci_add_history(struct uci_context *ctx, struct uci_list *list, int cmd, char *section, char *option, char *value)
 {
        struct uci_history *h;
@@ -48,7 +48,7 @@ uci_add_history(struct uci_context *ctx, struct uci_list *list, int cmd, char *s
        uci_list_add(list, &h->e.list);
 }
 
-static void
+void
 uci_free_history(struct uci_history *h)
 {
        if (!h)
index 04d9b902cad3029eff8569f85811ade0a139ea46..a503699bd1bbf5298a2b994c7c6d030ca6194ada 100644 (file)
--- a/libuci.c
+++ b/libuci.c
@@ -193,6 +193,18 @@ int uci_load(struct uci_context *ctx, const char *name, struct uci_package **pac
        return 0;
 }
 
+int uci_add_backend(struct uci_context *ctx, struct uci_backend *b)
+{
+       struct uci_element *e;
+       UCI_HANDLE_ERR(ctx);
+       e = uci_lookup_list(&ctx->backends, b->e.name);
+       if (e)
+               UCI_THROW(ctx, UCI_ERR_DUPLICATE);
+
+       uci_list_add(&ctx->backends, &b->e.list);
+       return 0;
+}
+
 int uci_set_backend(struct uci_context *ctx, const char *name)
 {
        struct uci_element *e;
index 81f02268fa9a66b55628ebf05ed23dae588a84f1..5b5a50dfcd41ece6ce7eb3babab243e5d964f6ff 100644 (file)
@@ -32,8 +32,9 @@ struct uci_parse_context
        int bufsz;
 };
 
-static void uci_add_history(struct uci_context *ctx, struct uci_list *list, int cmd, char *section, char *option, char *value);
-static void uci_free_history(struct uci_history *h);
+int uci_add_backend(struct uci_context *ctx, struct uci_backend *b);
+void uci_add_history(struct uci_context *ctx, struct uci_list *list, int cmd, char *section, char *option, char *value);
+void uci_free_history(struct uci_history *h);
 
 /*
  * functions for debug and error handling, for internal use only