#include <sys/queue.h>
#include <stdbool.h>
#include <stdint.h>
+#include <stdio.h>
#ifndef EC_COUNT_OF //XXX
#define EC_COUNT_OF(x) ((sizeof(x)/sizeof(0[x])) / \
/* config */
+/**
+ * Get the type of the configuration.
+ *
+ * @param config
+ * The configuration.
+ * @return
+ * The configuration type.
+ */
+enum ec_config_type ec_config_get_type(const struct ec_config *config);
+
/**
* Create a boolean configuration value.
*
/**
* Get configuration value.
*/
-struct ec_config *ec_config_get(const struct ec_config *config,
+struct ec_config *ec_config_dict_get(const struct ec_config *config,
const char *key);
/**
int ec_config_cmp(const struct ec_config *value1,
const struct ec_config *value2);
+/**
+ * Duplicate a configuration.
+ *
+ * @param config
+ * The configuration to duplicate.
+ * @return
+ * The duplicated configuration, or NULL on error (errno is set).
+ */
+struct ec_config *
+ec_config_dup(const struct ec_config *config);
+
/**
* Dump a configuration.
*