diff options
author | Manikandan Selvaganesh <mselvaga@redhat.com> | 2016-01-28 12:35:40 +0530 |
---|---|---|
committer | Kaushal M <kaushal@redhat.com> | 2016-02-10 03:19:07 -0800 |
commit | 32935246bf884760800029cb20627ea94a865cee (patch) | |
tree | 8f52a5ebf6b10f6605f75f42cc82298ffa1c54b3 /cli/src/cli-cmd-parser.c | |
parent | 5e65701f2660d1be101da81bffea7721d4f9ece0 (diff) |
cli/quota : quota is not enforcing when limit is set to 0
When limit value is set to 0, quota assumes that limit is not
set and is not enforcing currently. The patch fixes this issue by
restricting the user from setting limit value = 0.
Change-Id: I316653165cd9766600f95b5f23e5b8abcc2b41e7
BUG: 1302554
Signed-off-by: Manikandan Selvaganesh <mselvaga@redhat.com>
Reviewed-on: http://review.gluster.org/13309
Smoke: Gluster Build System <jenkins@build.gluster.com>
CentOS-regression: Gluster Build System <jenkins@build.gluster.com>
Reviewed-by: Vijaikumar Mallikarjuna <vmallika@redhat.com>
NetBSD-regression: NetBSD Build System <jenkins@build.gluster.org>
Reviewed-by: Kaushal M <kaushal@redhat.com>
Diffstat (limited to 'cli/src/cli-cmd-parser.c')
-rw-r--r-- | cli/src/cli-cmd-parser.c | 16 |
1 files changed, 9 insertions, 7 deletions
diff --git a/cli/src/cli-cmd-parser.c b/cli/src/cli-cmd-parser.c index 9254a3e34bd..69b94863c15 100644 --- a/cli/src/cli-cmd-parser.c +++ b/cli/src/cli-cmd-parser.c @@ -1085,12 +1085,14 @@ cli_cmd_quota_parse (const char **words, int wordcount, dict_t **options) if (type == GF_QUOTA_OPTION_TYPE_LIMIT_USAGE) { ret = gf_string2bytesize_int64 (words[5], &value); - if (ret != 0 || value < 0) { - if (errno == ERANGE || value < 0) - cli_err ("Value out of range " - "(0 - %"PRId64 "): %s", - INT64_MAX, words[5]); - else + if (ret != 0 || value <= 0) { + if (errno == ERANGE || value <= 0) { + ret = -1; + cli_err ("Please enter an integer " + "value in the range of " + "(1 - %"PRId64 ")", + INT64_MAX); + } else cli_err ("Please enter a correct " "value"); goto out; @@ -1101,7 +1103,7 @@ cli_cmd_quota_parse (const char **words, int wordcount, dict_t **options) if (errno == ERANGE || errno == EINVAL || limit <= 0 || strcmp (end_ptr, "") != 0) { ret = -1; - cli_err ("Please enter an interger value in " + cli_err ("Please enter an integer value in " "the range 1 - %"PRId64, INT64_MAX); goto out; } |