#define UCI_CONFDIR "/etc/config"
#define UCI_SAVEDIR "/tmp/.uci"
-#define UCI_FILEMODE 0600
+#define UCI_DIRMODE 0700
+#define UCI_FILEMODE 0600
enum
{
* If section is omitted, then a pointer to the config package is returned
* If option is omitted, then a pointer to the config section is returned
*/
-extern int uci_lookup(struct uci_context *ctx, struct uci_element **res, struct uci_package *package, char *section, char *option);
+extern int uci_lookup(struct uci_context *ctx, struct uci_element **res, struct uci_package *package, const char *section, const char *option);
/**
* uci_add_section: Add an unnamed section
* @section: section name (optional)
* @option option name (optional)
*/
-extern int uci_revert(struct uci_context *ctx, struct uci_package **p, char *section, char *option);
+extern int uci_revert(struct uci_context *ctx, struct uci_package **p, const char *section, const char *option);
/**
* uci_parse_argument: parse a shell-style argument, with an arbitrary quoting style
char **(*list_configs)(struct uci_context *ctx);
struct uci_package *(*load)(struct uci_context *ctx, const char *name);
void (*commit)(struct uci_context *ctx, struct uci_package **p, bool overwrite);
+
+ /* private: */
+ const void *ptr;
+ void *priv;
};
struct uci_context
struct uci_list history_path;
/* private: */
- int errno;
+ int err;
const char *func;
jmp_buf trap;
bool internal;
char *value;
};
-#define UCI_BACKEND(_var, _name, ...) \
-struct uci_backend _var = { \
- .e.list = { \
- .next = &_var.e.list, \
- .prev = &_var.e.list, \
- }, \
- .e.name = _name, \
- .e.type = UCI_TYPE_BACKEND, \
- __VA_ARGS__ \
-}
-
/* linked list handling */
#ifndef offsetof