diff options
Diffstat (limited to 'cli/src/cli-cmd-volume.c')
| -rw-r--r-- | cli/src/cli-cmd-volume.c | 11 | 
1 files changed, 10 insertions, 1 deletions
| diff --git a/cli/src/cli-cmd-volume.c b/cli/src/cli-cmd-volume.c index 467623f7320..68ac79878db 100644 --- a/cli/src/cli-cmd-volume.c +++ b/cli/src/cli-cmd-volume.c @@ -725,9 +725,13 @@ cli_cmd_quota_cbk (struct cli_state *state, struct cli_cmd_word *word,          int                      ret       = 0;          int                      parse_err = 0; +        int32_t                  type      = 0;          rpc_clnt_procedure_t    *proc      = NULL;          call_frame_t            *frame     = NULL;          dict_t                  *options   = NULL; +        gf_answer_t              answer    = GF_ANSWER_NO; +        const char *question = "Disabling quota will delete all the quota " +                               "configuration. Do you want to continue?";          proc = &cli_rpc_prog->proctable[GLUSTER_CLI_QUOTA];          if (proc == NULL) { @@ -742,10 +746,15 @@ cli_cmd_quota_cbk (struct cli_state *state, struct cli_cmd_word *word,          }          ret = cli_cmd_quota_parse (words, wordcount, &options); -        if (ret) { +        if (ret < 0) {                  cli_usage_out (word->pattern);                  parse_err = 1;                  goto out; +        } else if (dict_get_int32 (options, "type", &type) == 0 && +                   type == GF_QUOTA_OPTION_TYPE_DISABLE) { +                answer = cli_cmd_get_confirmation (state, question); +                if (answer == GF_ANSWER_NO) +                        goto out;          }          if (proc->fn) | 
