From 045772aa30ba1c5ab9dff730ce25ca6346c7150a Mon Sep 17 00:00:00 2001 From: Peter Rajnoha Date: Wed, 21 Sep 2016 14:42:16 +0200 Subject: config: add config_tree_from_string_without_dup_node_check to replace dm_config_from_string where needed --- libdaemon/client/config-util.c | 15 +++++++++++++++ libdaemon/client/config-util.h | 2 ++ 2 files changed, 17 insertions(+) (limited to 'libdaemon') diff --git a/libdaemon/client/config-util.c b/libdaemon/client/config-util.c index e262182b6..93f3d0a93 100644 --- a/libdaemon/client/config-util.c +++ b/libdaemon/client/config-util.c @@ -161,6 +161,21 @@ void chain_node(struct dm_config_node *cn, } +struct dm_config_tree *config_tree_from_string_without_dup_node_check(const char *config_settings) +{ + struct dm_config_tree *cft; + + if (!(cft = dm_config_create())) + return_NULL; + + if (!dm_config_parse_without_dup_node_check(cft, config_settings, config_settings + strlen(config_settings))) { + dm_config_destroy(cft); + return_NULL; + } + + return cft; +} + struct dm_config_node *make_config_node(struct dm_config_tree *cft, const char *key, struct dm_config_node *parent, diff --git a/libdaemon/client/config-util.h b/libdaemon/client/config-util.h index 38f36af31..485161f7b 100644 --- a/libdaemon/client/config-util.h +++ b/libdaemon/client/config-util.h @@ -66,4 +66,6 @@ struct dm_config_node *config_make_nodes(struct dm_config_tree *cft, struct dm_config_node *pre_sib, ...); +struct dm_config_tree *config_tree_from_string_without_dup_node_check(const char *config_settings); + #endif /* _LVM_DAEMON_CONFIG_UTIL_H */ -- cgit v1.2.1