summaryrefslogtreecommitdiffstats
path: root/xlators/mgmt/glusterd/src/glusterd-handler.c
diff options
context:
space:
mode:
Diffstat (limited to 'xlators/mgmt/glusterd/src/glusterd-handler.c')
-rw-r--r--xlators/mgmt/glusterd/src/glusterd-handler.c23
1 files changed, 16 insertions, 7 deletions
diff --git a/xlators/mgmt/glusterd/src/glusterd-handler.c b/xlators/mgmt/glusterd/src/glusterd-handler.c
index 51704b3d2..9ef81a4a7 100644
--- a/xlators/mgmt/glusterd/src/glusterd-handler.c
+++ b/xlators/mgmt/glusterd/src/glusterd-handler.c
@@ -624,15 +624,23 @@ glusterd_handle_cli_deprobe (rpcsvc_request_t *req)
goto out;
}
- ret = glusterd_all_volume_cond_check (glusterd_friend_brick_belongs,
- -1, &uuid);
- if (ret) {
- op_errno = GF_DEPROBE_BRICK_EXIST;
- goto out;
+ if (!uuid_is_null (uuid)) {
+ ret = glusterd_all_volume_cond_check (
+ glusterd_friend_brick_belongs,
+ -1, &uuid);
+ if (ret) {
+ op_errno = GF_DEPROBE_BRICK_EXIST;
+ goto out;
+ }
}
- ret = glusterd_deprobe_begin (req, cli_req.hostname,
- cli_req.port, uuid);
+ if (!uuid_is_null (uuid)) {
+ ret = glusterd_deprobe_begin (req, cli_req.hostname,
+ cli_req.port, uuid);
+ } else {
+ ret = glusterd_deprobe_begin (req, cli_req.hostname,
+ cli_req.port, NULL);
+ }
gf_cmd_log ("peer deprobe", "on host %s:%d %s", cli_req.hostname,
cli_req.port, (ret) ? "FAILED" : "SUCCESS");
@@ -641,6 +649,7 @@ out:
ret = glusterd_xfer_cli_deprobe_resp (req, ret, op_errno,
cli_req.hostname);
}
+
if (cli_req.hostname)
free (cli_req.hostname);//malloced by xdr
return ret;