diff options
author | Ashish Pandey <aspandey@redhat.com> | 2021-02-09 16:43:35 +0530 |
---|---|---|
committer | Xavi Hernandez <xhernandez@gmail.com> | 2021-03-29 07:44:03 +0200 |
commit | 7f313485ce018a0ddf7d2f0f745a9fb70bc4b3a6 (patch) | |
tree | 24ded87a1ecbcc5723bef2650aa1be14a563432c | |
parent | 2a524ad0738be491dcac3cc96db1411320168c72 (diff) | |
download | glusterfs-7f313485ce018a0ddf7d2f0f745a9fb70bc4b3a6.tar.gz glusterfs-7f313485ce018a0ddf7d2f0f745a9fb70bc4b3a6.tar.xz glusterfs-7f313485ce018a0ddf7d2f0f745a9fb70bc4b3a6.zip |
xlaotrs/mgmt: Fixing coverity issue 1445996
Fixing "Null pointer dereferences"
fixes: #2129
Signed-off-by: Ashish Pandey <aspandey@redhat.com>
-rw-r--r-- | xlators/mgmt/glusterd/src/glusterd-volgen.c | 12 |
1 files changed, 7 insertions, 5 deletions
diff --git a/xlators/mgmt/glusterd/src/glusterd-volgen.c b/xlators/mgmt/glusterd/src/glusterd-volgen.c index 06e5e1f332..87a8c5a44d 100644 --- a/xlators/mgmt/glusterd/src/glusterd-volgen.c +++ b/xlators/mgmt/glusterd/src/glusterd-volgen.c @@ -2800,21 +2800,23 @@ validate_user_xlator_position(dict_t *this, char *key, data_t *value, { int ret = -1; int i = 0; + char *value_str = NULL; if (!value) goto out; + value_str = data_to_str(value); + if (!value_str) + goto out; + if (fnmatch("user.xlator.*.*", key, 0) == 0) { ret = 0; goto out; } - char *value_str = data_to_str(value); - if (!value_str) - goto out; - int num_xlators = sizeof(server_graph_table) / sizeof(server_graph_table[0]); + for (i = 0; i < num_xlators; i++) { if (server_graph_table[i].dbg_key && strcmp(value_str, server_graph_table[i].dbg_key) == 0) { @@ -2826,7 +2828,7 @@ validate_user_xlator_position(dict_t *this, char *key, data_t *value, out: if (ret == -1) gf_log("glusterd", GF_LOG_ERROR, "invalid user xlator position %s = %s", - key, value->data); + key, value_str); return ret; } |