diff options
author | Kaleb S KEITHLEY <kkeithle@redhat.com> | 2015-12-18 15:21:27 -0500 |
---|---|---|
committer | Kaleb KEITHLEY <kkeithle@redhat.com> | 2016-02-15 01:32:14 -0800 |
commit | 62f9659554c07317c9d06251b74171d9eac0917e (patch) | |
tree | b6296bf8e990d7e027c91ebf8e85c5ff7b1f3dea /cli/src | |
parent | 954f2901345f42177033418112c052ed0795b295 (diff) |
all: fix various cppcheck warnings
fixes for various warnings reported by cppcheck
N.B. cppcheck output is in the bugzilla
Change-Id: I33acec127bc4536935fdd8d52a0c490ec54d50b2
BUG: 1292954
Signed-off-by: Kaleb S KEITHLEY <kkeithle@redhat.com>
Reviewed-on: http://review.gluster.org/13006
Reviewed-by: Jeff Darcy <jdarcy@redhat.com>
Smoke: Gluster Build System <jenkins@build.gluster.com>
NetBSD-regression: NetBSD Build System <jenkins@build.gluster.org>
CentOS-regression: Gluster Build System <jenkins@build.gluster.com>
Diffstat (limited to 'cli/src')
-rw-r--r-- | cli/src/cli-rpc-ops.c | 332 | ||||
-rw-r--r-- | cli/src/cli.c | 12 |
2 files changed, 220 insertions, 124 deletions
diff --git a/cli/src/cli-rpc-ops.c b/cli/src/cli-rpc-ops.c index 6a296174b30..4b4fa39075e 100644 --- a/cli/src/cli-rpc-ops.c +++ b/cli/src/cli-rpc-ops.c @@ -116,6 +116,8 @@ gf_cli_probe_cbk (struct rpc_req *req, struct iovec *iov, int ret = -1; char msg[1024] = {0,}; + GF_ASSERT (myframe); + if (-1 == req->rpc_status) { goto out; } @@ -168,6 +170,8 @@ gf_cli_deprobe_cbk (struct rpc_req *req, struct iovec *iov, int ret = -1; char msg[1024] = {0,}; + GF_ASSERT (myframe); + if (-1 == req->rpc_status) { goto out; } @@ -381,7 +385,10 @@ gf_cli_list_friends_cbk (struct rpc_req *req, struct iovec *iov, call_frame_t *frame = NULL; unsigned long flags = 0; + GF_ASSERT (myframe); + frame = myframe; + flags = (long)frame->local; if (flags == GF_CLI_LIST_POOL_NODES) { @@ -401,7 +408,7 @@ gf_cli_list_friends_cbk (struct rpc_req *req, struct iovec *iov, ret = xdr_to_generic (*iov, &rsp, (xdrproc_t)xdr_gf1_cli_peer_list_rsp); if (ret < 0) { - gf_log (((call_frame_t *) myframe)->this->name, GF_LOG_ERROR, + gf_log (frame->this->name, GF_LOG_ERROR, "Failed to decode xdr response"); //rsp.op_ret = -1; //rsp.op_errno = EINVAL; @@ -785,13 +792,22 @@ gf_cli_get_volume_cbk (struct rpc_req *req, struct iovec *iov, gf_cli_rsp rsp = {0}; char *caps = NULL; int k __attribute__((unused)) = 0; + call_frame_t *frame = NULL; + + GF_ASSERT (myframe); if (-1 == req->rpc_status) goto out; + frame = myframe; + + GF_ASSERT (frame->local); + + local = frame->local; + ret = xdr_to_generic (*iov, &rsp, (xdrproc_t)xdr_gf_cli_rsp); if (ret < 0) { - gf_log (((call_frame_t *) myframe)->this->name, GF_LOG_ERROR, + gf_log (frame->this->name, GF_LOG_ERROR, "Failed to decode xdr response"); goto out; } @@ -833,8 +849,6 @@ gf_cli_get_volume_cbk (struct rpc_req *req, struct iovec *iov, if (ret) goto out; - local = ((call_frame_t *)myframe)->local; - if (!count) { switch (local->get_vol.flags) { @@ -1065,31 +1079,35 @@ int gf_cli_create_volume_cbk (struct rpc_req *req, struct iovec *iov, int count, void *myframe) { - gf_cli_rsp rsp = {0,}; - int ret = -1; - cli_local_t *local = NULL; - char *volname = NULL; - dict_t *dict = NULL; + gf_cli_rsp rsp = {0,}; + int ret = -1; + cli_local_t *local = NULL; + char *volname = NULL; dict_t *rsp_dict = NULL; + call_frame_t *frame = NULL; + + GF_ASSERT (myframe); if (-1 == req->rpc_status) { goto out; } - local = ((call_frame_t *) (myframe))->local; + frame = myframe; + + GF_ASSERT (frame->local); + + local = frame->local; ret = xdr_to_generic (*iov, &rsp, (xdrproc_t)xdr_gf_cli_rsp); if (ret < 0) { - gf_log (((call_frame_t *) myframe)->this->name, GF_LOG_ERROR, + gf_log (frame->this->name, GF_LOG_ERROR, "Failed to decode xdr response"); goto out; } gf_log ("cli", GF_LOG_INFO, "Received resp to create volume"); - dict = local->dict; - - ret = dict_get_str (dict, "volname", &volname); + ret = dict_get_str (local->dict, "volname", &volname); if (ret) goto out; @@ -1141,15 +1159,20 @@ gf_cli_delete_volume_cbk (struct rpc_req *req, struct iovec *iov, cli_local_t *local = NULL; char *volname = NULL; call_frame_t *frame = NULL; - dict_t *dict = NULL; dict_t *rsp_dict = NULL; + GF_ASSERT (myframe); + if (-1 == req->rpc_status) { goto out; } frame = myframe; + GF_ASSERT (frame->local); + + local = frame->local; + ret = xdr_to_generic (*iov, &rsp, (xdrproc_t)xdr_gf_cli_rsp); if (ret < 0) { gf_log (frame->this->name, GF_LOG_ERROR, @@ -1157,11 +1180,7 @@ gf_cli_delete_volume_cbk (struct rpc_req *req, struct iovec *iov, goto out; } - local = frame->local; - - if (local) - dict = local->dict; - ret = dict_get_str (dict, "volname", &volname); + ret = dict_get_str (local->dict, "volname", &volname); if (ret) { gf_log (frame->this->name, GF_LOG_ERROR, "dict get failed"); @@ -1221,11 +1240,17 @@ gf_cli3_1_uuid_get_cbk (struct rpc_req *req, struct iovec *iov, call_frame_t *frame = NULL; dict_t *dict = NULL; + GF_ASSERT (myframe); + if (-1 == req->rpc_status) goto out; frame = myframe; + GF_ASSERT (frame->local); + + local = frame->local; + ret = xdr_to_generic (*iov, &rsp, (xdrproc_t)xdr_gf_cli_rsp); if (ret < 0) { gf_log (frame->this->name, GF_LOG_ERROR, @@ -1233,7 +1258,6 @@ gf_cli3_1_uuid_get_cbk (struct rpc_req *req, struct iovec *iov, goto out; } - local = frame->local; frame->local = NULL; gf_log ("cli", GF_LOG_INFO, "Received resp to uuid get"); @@ -1300,12 +1324,18 @@ gf_cli3_1_uuid_reset_cbk (struct rpc_req *req, struct iovec *iov, call_frame_t *frame = NULL; dict_t *dict = NULL; + GF_ASSERT (myframe); + if (-1 == req->rpc_status) { goto out; } frame = myframe; + GF_ASSERT (frame->local); + + local = frame->local; + ret = xdr_to_generic (*iov, &rsp, (xdrproc_t)xdr_gf_cli_rsp); if (ret < 0) { gf_log (frame->this->name, GF_LOG_ERROR, @@ -1313,7 +1343,6 @@ gf_cli3_1_uuid_reset_cbk (struct rpc_req *req, struct iovec *iov, goto out; } - local = frame->local; frame->local = NULL; gf_log ("cli", GF_LOG_INFO, "Received resp to uuid reset"); @@ -1355,15 +1384,20 @@ gf_cli_start_volume_cbk (struct rpc_req *req, struct iovec *iov, cli_local_t *local = NULL; char *volname = NULL; call_frame_t *frame = NULL; - dict_t *dict = NULL; dict_t *rsp_dict = NULL; + GF_ASSERT (myframe); + if (-1 == req->rpc_status) { goto out; } frame = myframe; + GF_ASSERT (frame->local); + + local = frame->local; + ret = xdr_to_generic (*iov, &rsp, (xdrproc_t)xdr_gf_cli_rsp); if (ret < 0) { gf_log (frame->this->name, GF_LOG_ERROR, @@ -1371,13 +1405,7 @@ gf_cli_start_volume_cbk (struct rpc_req *req, struct iovec *iov, goto out; } - if (frame) - local = frame->local; - - if (local) - dict = local->dict; - - ret = dict_get_str (dict, "volname", &volname); + ret = dict_get_str (local->dict, "volname", &volname); if (ret) { gf_log ("cli", GF_LOG_ERROR, "dict get failed"); goto out; @@ -1433,15 +1461,20 @@ gf_cli_stop_volume_cbk (struct rpc_req *req, struct iovec *iov, cli_local_t *local = NULL; char *volname = NULL; call_frame_t *frame = NULL; - dict_t *dict = NULL; dict_t *rsp_dict = NULL; + GF_ASSERT (myframe); + if (-1 == req->rpc_status) { goto out; } frame = myframe; + GF_ASSERT (frame->local); + + local = frame->local; + ret = xdr_to_generic (*iov, &rsp, (xdrproc_t)xdr_gf_cli_rsp); if (ret < 0) { gf_log (frame->this->name, GF_LOG_ERROR, @@ -1449,17 +1482,11 @@ gf_cli_stop_volume_cbk (struct rpc_req *req, struct iovec *iov, goto out; } - if (frame) - local = frame->local; - - if (local) { - dict = local->dict; - ret = dict_get_str (dict, "volname", &volname); - if (ret) { - gf_log (frame->this->name, GF_LOG_ERROR, - "Unable to get volname from dict"); - goto out; - } + ret = dict_get_str (local->dict, "volname", &volname); + if (ret) { + gf_log (frame->this->name, GF_LOG_ERROR, + "Unable to get volname from dict"); + goto out; } gf_log ("cli", GF_LOG_INFO, "Received resp to stop volume"); @@ -1716,7 +1743,6 @@ gf_cli_defrag_volume_cbk (struct rpc_req *req, struct iovec *iov, int cmd = 0; int ret = -1; dict_t *dict = NULL; - dict_t *local_dict = NULL; char msg[1024] = {0,}; char *task_id_str = NULL; @@ -1724,8 +1750,14 @@ gf_cli_defrag_volume_cbk (struct rpc_req *req, struct iovec *iov, goto out; } + GF_ASSERT (myframe); + frame = myframe; + GF_ASSERT (frame->local); + + local = frame->local; + ret = xdr_to_generic (*iov, &rsp, (xdrproc_t)xdr_gf_cli_rsp); if (ret < 0) { @@ -1734,20 +1766,15 @@ gf_cli_defrag_volume_cbk (struct rpc_req *req, struct iovec *iov, goto out; } - if (frame) - local = frame->local; - - if (local) - local_dict = local->dict; - - ret = dict_get_str (local_dict, "volname", &volname); + ret = dict_get_str (local->dict, "volname", &volname); if (ret) { gf_log (frame->this->name, GF_LOG_ERROR, "Failed to get volname"); goto out; } - ret = dict_get_int32 (local_dict, "rebalance-command", (int32_t*)&cmd); + ret = dict_get_int32 (local->dict, "rebalance-command", + (int32_t *)&cmd); if (ret) { gf_log ("cli", GF_LOG_ERROR, "Failed to get command"); @@ -1913,6 +1940,8 @@ gf_cli_rename_volume_cbk (struct rpc_req *req, struct iovec *iov, int ret = -1; char msg[1024] = {0,}; + GF_ASSERT (myframe); + if (-1 == req->rpc_status) { goto out; } @@ -1957,6 +1986,9 @@ gf_cli_reset_volume_cbk (struct rpc_req *req, struct iovec *iov, gf_cli_rsp rsp = {0,}; int ret = -1; char msg[1024] = {0,}; + call_frame_t *frame = NULL; + + GF_ASSERT (myframe); if (-1 == req->rpc_status) { goto out; @@ -2009,6 +2041,8 @@ gf_cli_ganesha_cbk (struct rpc_req *req, struct iovec *iov, char msg[1024] = {0,}; char tmp_str[512] = {0,}; + GF_ASSERT (myframe); + if (-1 == req->rpc_status) { goto out; } @@ -2112,6 +2146,8 @@ gf_cli_set_volume_cbk (struct rpc_req *req, struct iovec *iov, char *debug_xlator = NULL; char tmp_str[512] = {0,}; + GF_ASSERT (myframe); + if (-1 == req->rpc_status) { goto out; } @@ -2193,6 +2229,8 @@ gf_cli_attach_tier_cbk (struct rpc_req *req, struct iovec *iov, int ret = -1; char msg[1024] = {0,}; + GF_ASSERT (myframe); + if (-1 == req->rpc_status) { goto out; } @@ -2250,11 +2288,16 @@ gf_cli_detach_tier_cbk (struct rpc_req *req, struct iovec *iov, char *task_id_str = NULL; dict_t *rsp_dict = NULL; + GF_ASSERT (myframe); + if (-1 == req->rpc_status) { goto out; } frame = myframe; + + GF_ASSERT (frame->local); + local = frame->local; ret = xdr_to_generic (*iov, &rsp, (xdrproc_t)xdr_gf_cli_rsp); @@ -2368,12 +2411,18 @@ gf_cli_detach_tier_status_cbk (struct rpc_req *req, struct iovec *iov, call_frame_t *frame = NULL; char *cmd_str = "unknown"; + GF_ASSERT (myframe); + if (-1 == req->rpc_status) { goto out; } frame = myframe; + GF_ASSERT (frame->local); + + local = frame->local; + ret = xdr_to_generic (*iov, &rsp, (xdrproc_t)xdr_gf_cli_rsp); if (ret < 0) { @@ -2382,11 +2431,10 @@ gf_cli_detach_tier_status_cbk (struct rpc_req *req, struct iovec *iov, goto out; } - if (frame) - local = frame->local; ret = dict_get_int32 (local->dict, "command", &command); if (ret) goto out; + cmd = command; switch (cmd) { @@ -2489,6 +2537,8 @@ gf_cli_add_brick_cbk (struct rpc_req *req, struct iovec *iov, int ret = -1; char msg[1024] = {0,}; + GF_ASSERT (myframe); + if (-1 == req->rpc_status) { goto out; } @@ -2545,12 +2595,18 @@ gf_cli3_remove_brick_status_cbk (struct rpc_req *req, struct iovec *iov, call_frame_t *frame = NULL; char *cmd_str = "unknown"; + GF_ASSERT (myframe); + if (-1 == req->rpc_status) { goto out; } frame = myframe; + GF_ASSERT (frame->local); + + local = frame->local; + ret = xdr_to_generic (*iov, &rsp, (xdrproc_t)xdr_gf_cli_rsp); if (ret < 0) { @@ -2559,11 +2615,10 @@ gf_cli3_remove_brick_status_cbk (struct rpc_req *req, struct iovec *iov, goto out; } - if (frame) - local = frame->local; ret = dict_get_int32 (local->dict, "command", &command); if (ret) goto out; + cmd = command; switch (cmd) { @@ -2673,11 +2728,16 @@ gf_cli_remove_brick_cbk (struct rpc_req *req, struct iovec *iov, char *task_id_str = NULL; dict_t *rsp_dict = NULL; + GF_ASSERT (myframe); + if (-1 == req->rpc_status) { goto out; } frame = myframe; + + GF_ASSERT (frame->local); + local = frame->local; ret = xdr_to_generic (*iov, &rsp, (xdrproc_t)xdr_gf_cli_rsp); @@ -2783,7 +2843,6 @@ gf_cli_replace_brick_cbk (struct rpc_req *req, struct iovec *iov, int ret = -1; cli_local_t *local = NULL; call_frame_t *frame = NULL; - dict_t *dict = NULL; char *src_brick = NULL; char *dst_brick = NULL; char *status_reply = NULL; @@ -2793,11 +2852,17 @@ gf_cli_replace_brick_cbk (struct rpc_req *req, struct iovec *iov, char *task_id_str = NULL; char *replace_op = 0; + GF_ASSERT (myframe); + if (-1 == req->rpc_status) { goto out; } - frame = (call_frame_t *) myframe; + frame = myframe; + + GF_ASSERT (frame->local); + + local = frame->local; ret = xdr_to_generic (*iov, &rsp, (xdrproc_t)xdr_gf_cli_rsp); if (ret < 0) { @@ -2806,11 +2871,7 @@ gf_cli_replace_brick_cbk (struct rpc_req *req, struct iovec *iov, goto out; } - local = frame->local; - GF_ASSERT (local); - dict = local->dict; - - ret = dict_get_str (dict, "operation", &replace_op); + ret = dict_get_str (local->dict, "operation", &replace_op); if (ret) { gf_log (frame->this->name, GF_LOG_ERROR, "dict_get on operation failed"); @@ -2897,6 +2958,8 @@ gf_cli_log_rotate_cbk (struct rpc_req *req, struct iovec *iov, int ret = -1; char msg[1024] = {0,}; + GF_ASSERT (myframe); + if (-1 == req->rpc_status) { goto out; } @@ -2946,6 +3009,8 @@ gf_cli_sync_volume_cbk (struct rpc_req *req, struct iovec *iov, int ret = -1; char msg[1024] = {0,}; + GF_ASSERT (myframe); + if (-1 == req->rpc_status) { goto out; } @@ -3466,23 +3531,24 @@ cli_quotad_getlimit_cbk (struct rpc_req *req, struct iovec *iov, dict_t *dict = NULL; call_frame_t *frame = NULL; cli_local_t *local = NULL; - dict_t *gd_rsp_dict = NULL; int32_t list_count = 0; pthread_t th_id = {0, }; + GF_ASSERT (myframe); + frame = myframe; - GF_ASSERT (frame); + + GF_ASSERT (frame->local); local = frame->local; - gd_rsp_dict = local->dict; LOCK (&local->lock); { - ret = dict_get_int32 (gd_rsp_dict, "quota-list-count", + ret = dict_get_int32 (local->dict, "quota-list-count", &list_count); if (ret) list_count = 0; - ret = dict_set_int32 (gd_rsp_dict, "quota-list-count", + ret = dict_set_int32 (local->dict, "quota-list-count", list_count + 1); } UNLOCK (&local->lock); @@ -3631,16 +3697,20 @@ gf_cli_quota_cbk (struct rpc_req *req, struct iovec *iov, char *default_sl = NULL; char *limit_list = NULL; cli_local_t *local = NULL; - dict_t *aggr = NULL; char *default_sl_dup = NULL; int32_t entry_count = 0; + + GF_ASSERT (myframe); + if (-1 == req->rpc_status) { goto out; } frame = myframe; + + GF_ASSERT (frame->local); + local = frame->local; - aggr = local->dict; ret = xdr_to_generic (*iov, &rsp, (xdrproc_t)xdr_gf_cli_rsp); if (ret < 0) { @@ -3701,7 +3771,7 @@ gf_cli_quota_cbk (struct rpc_req *req, struct iovec *iov, ret = -1; goto out; } - ret = dict_set_dynstr (aggr, "default-soft-limit", + ret = dict_set_dynstr (local->dict, "default-soft-limit", default_sl_dup); if (ret) { gf_log (frame->this->name, GF_LOG_TRACE, @@ -3768,23 +3838,22 @@ gf_cli_getspec_cbk (struct rpc_req *req, struct iovec *iov, gf_getspec_rsp rsp = {0,}; int ret = -1; char *spec = NULL; - call_frame_t *frame = NULL; + + GF_ASSERT (myframe); if (-1 == req->rpc_status) { goto out; } - frame = myframe; - ret = xdr_to_generic (*iov, &rsp, (xdrproc_t)xdr_gf_getspec_rsp); if (ret < 0) { - gf_log (frame->this->name, GF_LOG_ERROR, + gf_log (((call_frame_t *) myframe)->this->name, GF_LOG_ERROR, "Failed to decode xdr response"); goto out; } if (rsp.op_ret == -1) { - gf_log (frame->this->name, GF_LOG_ERROR, + gf_log (((call_frame_t *) myframe)->this->name, GF_LOG_ERROR, "getspec failed"); goto out; } @@ -3815,23 +3884,22 @@ gf_cli_pmap_b2p_cbk (struct rpc_req *req, struct iovec *iov, pmap_port_by_brick_rsp rsp = {0,}; int ret = -1; char *spec = NULL; - call_frame_t *frame = NULL; + + GF_ASSERT (myframe); if (-1 == req->rpc_status) { goto out; } - frame = myframe; - ret = xdr_to_generic (*iov, &rsp, (xdrproc_t)xdr_pmap_port_by_brick_rsp); if (ret < 0) { - gf_log (frame->this->name, GF_LOG_ERROR, + gf_log (((call_frame_t *) myframe)->this->name, GF_LOG_ERROR, "Failed to decode xdr response"); goto out; } if (rsp.op_ret == -1) { - gf_log (frame->this->name, GF_LOG_ERROR, + gf_log (((call_frame_t *) myframe)->this->name, GF_LOG_ERROR, "pump_b2p failed"); goto out; } @@ -4890,6 +4958,8 @@ gf_cli_fsm_log_cbk (struct rpc_req *req, struct iovec *iov, char *event = NULL; char *time = NULL; + GF_ASSERT (myframe); + if (-1 == req->rpc_status) { goto out; } @@ -5442,18 +5512,16 @@ gf_cli_sys_exec_cbk (struct rpc_req *req, struct iovec *iov, char output_name[PATH_MAX] = ""; gf_cli_rsp rsp = {0, }; dict_t *dict = NULL; - call_frame_t *frame = NULL; + + GF_ASSERT (myframe); if (req->rpc_status == -1) { - ret = -1; goto out; } - frame = myframe; - ret = xdr_to_generic (*iov, &rsp, (xdrproc_t)xdr_gf_cli_rsp); if (ret < 0) { - gf_log (frame->this->name, GF_LOG_ERROR, + gf_log (((call_frame_t *) myframe)->this->name, GF_LOG_ERROR, "Failed to decode xdr response"); goto out; } @@ -5531,18 +5599,16 @@ gf_cli_copy_file_cbk (struct rpc_req *req, struct iovec *iov, int ret = -1; gf_cli_rsp rsp = {0, }; dict_t *dict = NULL; - call_frame_t *frame = NULL; + + GF_ASSERT (myframe); if (req->rpc_status == -1) { - ret = -1; goto out; } - frame = myframe; - ret = xdr_to_generic (*iov, &rsp, (xdrproc_t)xdr_gf_cli_rsp); if (ret < 0) { - gf_log (frame->this->name, GF_LOG_ERROR, + gf_log (((call_frame_t *) myframe)->this->name, GF_LOG_ERROR, "Failed to decode xdr response"); goto out; } @@ -5592,9 +5658,9 @@ gf_cli_gsync_set_cbk (struct rpc_req *req, struct iovec *iov, call_frame_t *frame = NULL; gf_boolean_t status_detail = _gf_false; + GF_ASSERT (myframe); if (req->rpc_status == -1) { - ret = -1; goto out; } @@ -5602,7 +5668,7 @@ gf_cli_gsync_set_cbk (struct rpc_req *req, struct iovec *iov, ret = xdr_to_generic (*iov, &rsp, (xdrproc_t)xdr_gf_cli_rsp); if (ret < 0) { - gf_log (frame->this->name, GF_LOG_ERROR, + gf_log (((call_frame_t *) myframe)->this->name, GF_LOG_ERROR, "Failed to decode xdr response"); goto out; } @@ -5643,7 +5709,8 @@ gf_cli_gsync_set_cbk (struct rpc_req *req, struct iovec *iov, ret = dict_get_int32 (dict, "type", &type); if (ret) { - gf_log (frame->this->name, GF_LOG_ERROR, "failed to get type"); + gf_log (((call_frame_t *) myframe)->this->name, GF_LOG_ERROR, + "failed to get type"); goto out; } @@ -5996,6 +6063,8 @@ gf_cli_profile_volume_cbk (struct rpc_req *req, struct iovec *iov, int stats_cleared = 0; gf1_cli_info_op info_op = GF_CLI_INFO_NONE; + GF_ASSERT (myframe); + if (-1 == req->rpc_status) { goto out; } @@ -6200,6 +6269,8 @@ gf_cli_top_volume_cbk (struct rpc_req *req, struct iovec *iov, gf_boolean_t clear_stats = _gf_false; int stats_cleared = 0; + GF_ASSERT (myframe); + if (-1 == req->rpc_status) { goto out; } @@ -6439,6 +6510,8 @@ gf_cli_getwd_cbk (struct rpc_req *req, struct iovec *iov, gf1_cli_getwd_rsp rsp = {0,}; int ret = -1; + GF_ASSERT (myframe); + if (-1 == req->rpc_status) { goto out; } @@ -7582,6 +7655,8 @@ gf_cli_status_cbk (struct rpc_req *req, struct iovec *iov, gf_boolean_t wipe_local = _gf_false; char msg[1024] = {0,}; + GF_ASSERT (myframe); + if (req->rpc_status == -1) goto out; @@ -7594,7 +7669,7 @@ gf_cli_status_cbk (struct rpc_req *req, struct iovec *iov, gf_log ("cli", GF_LOG_DEBUG, "Received response to status cmd"); - local = ((call_frame_t *)myframe)->local; + local = ((call_frame_t *) myframe)->local; if (!local) { local = cli_local_get (); if (!local) { @@ -7900,18 +7975,22 @@ gf_cli_status_volume_all (call_frame_t *frame, xlator_t *this, void *data) dict_t *dict = NULL; cli_local_t *local = NULL; - if (frame->local) { - local = frame->local; - local->all = _gf_true; - } else + if (!frame) goto out; + if (!frame->local) + goto out; + + local = frame->local; + ret = dict_get_uint32 (local->dict, "cmd", &cmd); if (ret) goto out; + local->all = _gf_true; ret = gf_cli_status_volume (frame, this, data); + if (ret) goto out; @@ -8002,6 +8081,8 @@ gf_cli_mount_cbk (struct rpc_req *req, struct iovec *iov, gf1_cli_mount_rsp rsp = {0,}; int ret = -1; + GF_ASSERT (myframe); + if (-1 == req->rpc_status) { goto out; } @@ -8070,6 +8151,8 @@ gf_cli_umount_cbk (struct rpc_req *req, struct iovec *iov, gf1_cli_umount_rsp rsp = {0,}; int ret = -1; + GF_ASSERT (myframe); + if (-1 == req->rpc_status) { goto out; } @@ -8363,7 +8446,6 @@ gf_cli_heal_volume_cbk (struct rpc_req *req, struct iovec *iov, cli_local_t *local = NULL; char *volname = NULL; call_frame_t *frame = NULL; - dict_t *input_dict = NULL; dict_t *dict = NULL; int brick_count = 0; int i = 0; @@ -8372,12 +8454,18 @@ gf_cli_heal_volume_cbk (struct rpc_req *req, struct iovec *iov, char *substr = NULL; char *heal_op_str = NULL; + GF_ASSERT (myframe); + if (-1 == req->rpc_status) { goto out; } frame = myframe; + GF_ASSERT (frame->local); + + local = frame->local; + ret = xdr_to_generic (*iov, &rsp, (xdrproc_t)xdr_gf_cli_rsp); if (ret < 0) { gf_log (frame->this->name, GF_LOG_ERROR, @@ -8385,14 +8473,7 @@ gf_cli_heal_volume_cbk (struct rpc_req *req, struct iovec *iov, goto out; } - if (frame) - local = frame->local; - - if (local) { - input_dict = local->dict; - ret = dict_get_int32 (input_dict, "heal-op", - (int32_t*)&heal_op); - } + ret = dict_get_int32 (local->dict, "heal-op", (int32_t *)&heal_op); //TODO: Proper XML output //#if (HAVE_LIB_XML) // if (global_state->mode & GLUSTER_MODE_XML) { @@ -8405,7 +8486,7 @@ gf_cli_heal_volume_cbk (struct rpc_req *req, struct iovec *iov, // } //#endif - ret = dict_get_str (input_dict, "volname", &volname); + ret = dict_get_str (local->dict, "volname", &volname); if (ret) { gf_log (frame->this->name, GF_LOG_ERROR, "failed to get volname"); goto out; @@ -8578,10 +8659,12 @@ gf_cli_statedump_volume_cbk (struct rpc_req *req, struct iovec *iov, int ret = -1; char msg[1024] = {0,}; + GF_ASSERT (myframe); + if (-1 == req->rpc_status) goto out; - ret = xdr_to_generic (*iov, &rsp, - (xdrproc_t)xdr_gf_cli_rsp); + + ret = xdr_to_generic (*iov, &rsp, (xdrproc_t)xdr_gf_cli_rsp); if (ret < 0) { gf_log (((call_frame_t *) myframe)->this->name, GF_LOG_ERROR, "Failed to decode xdr response"); @@ -8650,8 +8733,11 @@ gf_cli_list_volume_cbk (struct rpc_req *req, struct iovec *iov, char key[1024] = {0,}; int i = 0; + GF_ASSERT (myframe); + if (-1 == req->rpc_status) goto out; + ret = xdr_to_generic (*iov, &rsp, (xdrproc_t)xdr_gf_cli_rsp); if (ret < 0) { @@ -8738,8 +8824,11 @@ gf_cli_clearlocks_volume_cbk (struct rpc_req *req, struct iovec *iov, char *volname = NULL; dict_t *dict = NULL; + GF_ASSERT (myframe); + if (-1 == req->rpc_status) goto out; + ret = xdr_to_generic (*iov, &rsp, (xdrproc_t)xdr_gf_cli_rsp); if (ret < 0) { @@ -9839,8 +9928,9 @@ gf_cli_snapshot_cbk (struct rpc_req *req, struct iovec *iov, int8_t soft_limit_flag = -1; char *volname = NULL; + GF_ASSERT (myframe); + if (req->rpc_status == -1) { - ret = -1; goto out; } @@ -10439,10 +10529,12 @@ gf_cli_barrier_volume_cbk (struct rpc_req *req, struct iovec *iov, int ret = -1; dict_t *dict = NULL; + GF_ASSERT (myframe); + if (-1 == req->rpc_status) goto out; - ret = xdr_to_generic (*iov, &rsp, - (xdrproc_t)xdr_gf_cli_rsp); + + ret = xdr_to_generic (*iov, &rsp, (xdrproc_t)xdr_gf_cli_rsp); if (ret < 0) { gf_log (((call_frame_t *) myframe)->this->name, GF_LOG_ERROR, "Failed to decode xdr response"); @@ -10507,10 +10599,12 @@ gf_cli_get_vol_opt_cbk (struct rpc_req *req, struct iovec *iov, int count, int i = 0; char dict_key[50] = {0,}; + GF_ASSERT (myframe); + if (-1 == req->rpc_status) goto out; - ret = xdr_to_generic (*iov, &rsp, - (xdrproc_t)xdr_gf_cli_rsp); + + ret = xdr_to_generic (*iov, &rsp, (xdrproc_t)xdr_gf_cli_rsp); if (ret < 0) { gf_log (((call_frame_t *) myframe)->this->name, GF_LOG_ERROR, "Failed to decode xdr response"); @@ -10844,18 +10938,16 @@ gf_cli_bitrot_cbk (struct rpc_req *req, struct iovec *iov, int type = 0; gf_cli_rsp rsp = {0, }; dict_t *dict = NULL; - call_frame_t *frame = NULL; + + GF_ASSERT (myframe); if (req->rpc_status == -1) { - ret = -1; goto out; } - frame = myframe; - ret = xdr_to_generic (*iov, &rsp, (xdrproc_t)xdr_gf_cli_rsp); if (ret < 0) { - gf_log (frame->this->name, GF_LOG_ERROR, + gf_log (((call_frame_t *) myframe)->this->name, GF_LOG_ERROR, "Failed to decode xdr response"); goto out; } diff --git a/cli/src/cli.c b/cli/src/cli.c index 46736bbf76d..118a94f0b41 100644 --- a/cli/src/cli.c +++ b/cli/src/cli.c @@ -496,8 +496,10 @@ _cli_err (const char *fmt, ...) va_start (ap, fmt); #ifdef HAVE_READLINE - if (state->rl_enabled && !state->rl_processing) - return cli_rl_err(state, fmt, ap); + if (state->rl_enabled && !state->rl_processing) { + va_end (ap); + return cli_rl_err (state, fmt, ap); + } #endif ret = vfprintf (stderr, fmt, ap); @@ -520,8 +522,10 @@ _cli_out (const char *fmt, ...) va_start (ap, fmt); #ifdef HAVE_READLINE - if (state->rl_enabled && !state->rl_processing) - return cli_rl_out(state, fmt, ap); + if (state->rl_enabled && !state->rl_processing) { + va_end (ap); + return cli_rl_out (state, fmt, ap); + } #endif ret = vprintf (fmt, ap); |