If we pass a negative value to command qgroup limit, btrfs-progs would convert it to unsigned long long silently. That's a little confusing to user, why I can limit my quota to a negative value.
This patch add a check in parse_limit, if the input value is negative, error out to user. Reported-by: Tsutomu Itoh <[email protected]> Signed-off-by: Dongsheng Yang <[email protected]> --- cmds-qgroup.c | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/cmds-qgroup.c b/cmds-qgroup.c index 00cc089..5ea4021 100644 --- a/cmds-qgroup.c +++ b/cmds-qgroup.c @@ -116,6 +116,10 @@ static int parse_limit(const char *p, unsigned long long *s) *s = CLEAR_VALUE; return 1; } + + if (p[0] == '-') + return 0; + size = strtoull(p, &endptr, 10); switch (*endptr) { case 'T': -- 1.8.4.2 -- To unsubscribe from this list: send the line "unsubscribe linux-btrfs" in the body of a message to [email protected] More majordomo info at http://vger.kernel.org/majordomo-info.html
