X-Git-Url: http://pilppa.org/gitweb/?a=blobdiff_plain;f=uci_internal.h;h=32f29511f849ca20acf2705f7b84253a4657b308;hb=HEAD;hp=7ce00d04dda07c13f6708874aec276477e929717;hpb=6ce771b1095c220f849e70cdcbf23bd09f7fe7d5;p=uci.git diff --git a/uci_internal.h b/uci_internal.h index 7ce00d0..32f2951 100644 --- a/uci_internal.h +++ b/uci_internal.h @@ -40,12 +40,15 @@ struct uci_parse_context int bufsz; }; +extern const char *uci_confdir; +extern const char *uci_savedir; + __plugin void *uci_malloc(struct uci_context *ctx, size_t size); __plugin void *uci_realloc(struct uci_context *ctx, void *ptr, size_t size); __plugin char *uci_strdup(struct uci_context *ctx, const char *str); __plugin bool uci_validate_str(const char *str, bool name); -__plugin void uci_add_history(struct uci_context *ctx, struct uci_list *list, int cmd, const char *section, const char *option, const char *value); -__plugin void uci_free_history(struct uci_history *h); +__plugin void uci_add_delta(struct uci_context *ctx, struct uci_list *list, int cmd, const char *section, const char *option, const char *value); +__plugin void uci_free_delta(struct uci_delta *h); __plugin struct uci_package *uci_alloc_package(struct uci_context *ctx, const char *name); __private FILE *uci_open_stream(struct uci_context *ctx, const char *filename, int pos, bool write, bool create); @@ -59,8 +62,11 @@ __private void uci_cleanup(struct uci_context *ctx); __private struct uci_element *uci_lookup_list(struct uci_list *list, const char *name); __private void uci_fixup_section(struct uci_context *ctx, struct uci_section *s); __private void uci_free_package(struct uci_package **package); +__private struct uci_element *uci_alloc_generic(struct uci_context *ctx, int type, const char *name, int size); +__private void uci_free_element(struct uci_element *e); +__private struct uci_element *uci_expand_ptr(struct uci_context *ctx, struct uci_ptr *ptr, bool complete); -__private int uci_load_history(struct uci_context *ctx, struct uci_package *p, bool flush); +__private int uci_load_delta(struct uci_context *ctx, struct uci_package *p, bool flush); static inline bool uci_validate_package(const char *str) {