diff options
author | Krishnan Parthasarathi <kparthas@redhat.com> | 2012-07-24 12:44:11 +0530 |
---|---|---|
committer | Anand Avati <avati@redhat.com> | 2012-07-29 14:20:38 -0700 |
commit | 86e326921e29bc39f2ea4efe6a1882199de18a79 (patch) | |
tree | a3d24f0108b7ded371e8d3a64616db200be24501 /xlators/mgmt/glusterd/src/glusterd-handler.c | |
parent | c9b96e26a3bab09a4146b2bec57a57c69b9aa8b7 (diff) |
glusterd: Persisted hooks friendly user.* keys
- Fixed validation of user.* keys in presence of multiple key, value
pairs in a single volume set command
Change-Id: I5b96de2d009fbc79772121308d9b4c0a552bac52
BUG: 825902
Signed-off-by: Krishnan Parthasarathi <kparthas@redhat.com>
Reviewed-on: http://review.gluster.com/3715
Tested-by: Gluster Build System <jenkins@build.gluster.com>
Reviewed-by: Anand Avati <avati@redhat.com>
Diffstat (limited to 'xlators/mgmt/glusterd/src/glusterd-handler.c')
-rw-r--r-- | xlators/mgmt/glusterd/src/glusterd-handler.c | 21 |
1 files changed, 6 insertions, 15 deletions
diff --git a/xlators/mgmt/glusterd/src/glusterd-handler.c b/xlators/mgmt/glusterd/src/glusterd-handler.c index 4540bf3e2..ccec91f80 100644 --- a/xlators/mgmt/glusterd/src/glusterd-handler.c +++ b/xlators/mgmt/glusterd/src/glusterd-handler.c @@ -285,7 +285,6 @@ glusterd_add_volume_detail_to_dict (glusterd_volinfo_t *volinfo, data_pair_t *pairs = NULL; char reconfig_key[256] = {0, }; dict_t *dict = NULL; - data_t *value = NULL; int opt_count = 0; glusterd_conf_t *priv = NULL; char *volume_id_str = NULL; @@ -370,21 +369,13 @@ glusterd_add_volume_detail_to_dict (glusterd_volinfo_t *volinfo, goto out; } - pairs = dict->members_list; + for (pairs = dict->members_list; pairs != NULL; pairs = pairs->next) { + snprintf (reconfig_key, 256, "volume%d.option.%s", count, + pairs->key); + ret = dict_set_str (volumes, reconfig_key, pairs->value->data); + if (0 == ret) + opt_count++; - while (pairs) { - if (1 == glusterd_check_option_exists (pairs->key, NULL)) { - value = pairs->value; - if (!value) - continue; - - snprintf (reconfig_key, 256, "volume%d.option.%s", count, - pairs->key); - ret = dict_set_str (volumes, reconfig_key, value->data); - if (!ret) - opt_count++; - } - pairs = pairs->next; } snprintf (key, 256, "volume%d.opt_count", count); |