提交 d27160bb 编写于 作者: A Andrea Bolognani 提交者: John Ferlan

virsh: Use standard error messages in vshCommandOptTimeoutToMs()

I missed this in the first time around, thanks Michal for noticing.
上级 779457a1
...@@ -257,7 +257,7 @@ test -s err && fail=1 ...@@ -257,7 +257,7 @@ test -s err && fail=1
# Non-numeric value # Non-numeric value
cat <<\EOF > exp-err || framework_failure cat <<\EOF > exp-err || framework_failure
error: invalid timeout error: Numeric value for <timeout> option is malformed or out of range
EOF EOF
virsh -q -c $test_url event --all --timeout abc >out 2>err && fail=1 virsh -q -c $test_url event --all --timeout abc >out 2>err && fail=1
test -s out && fail=1 test -s out && fail=1
...@@ -266,7 +266,7 @@ compare exp-err err || fail=1 ...@@ -266,7 +266,7 @@ compare exp-err err || fail=1
# Numeric value that's too big to be converted to ms and still # Numeric value that's too big to be converted to ms and still
# fit inside an int # fit inside an int
cat <<\EOF > exp-err || framework_failure cat <<\EOF > exp-err || framework_failure
error: timeout is too big error: Numeric value for <timeout> option is malformed or out of range
EOF EOF
virsh -q -c $test_url event --all --timeout 2147484 >out 2>err && fail=1 virsh -q -c $test_url event --all --timeout 2147484 >out 2>err && fail=1
test -s out && fail=1 test -s out && fail=1
...@@ -274,7 +274,7 @@ compare exp-err err || fail=1 ...@@ -274,7 +274,7 @@ compare exp-err err || fail=1
# Numeric value with invalid suffix # Numeric value with invalid suffix
cat <<\EOF > exp-err || framework_failure cat <<\EOF > exp-err || framework_failure
error: invalid timeout error: Numeric value for <timeout> option is malformed or out of range
EOF EOF
virsh -q -c $test_url event --all --timeout 42WB >out 2>err && fail=1 virsh -q -c $test_url event --all --timeout 42WB >out 2>err && fail=1
test -s out && fail=1 test -s out && fail=1
...@@ -283,7 +283,7 @@ compare exp-err err || fail=1 ...@@ -283,7 +283,7 @@ compare exp-err err || fail=1
# Numeric value with valid suffix. Suffixes are not supported for # Numeric value with valid suffix. Suffixes are not supported for
# the <timeout> option, so this value is rejected # the <timeout> option, so this value is rejected
cat <<\EOF > exp-err || framework_failure cat <<\EOF > exp-err || framework_failure
error: invalid timeout error: Numeric value for <timeout> option is malformed or out of range
EOF EOF
virsh -q -c $test_url event --all --timeout 42MB >out 2>err && fail=1 virsh -q -c $test_url event --all --timeout 42MB >out 2>err && fail=1
test -s out && fail=1 test -s out && fail=1
...@@ -291,7 +291,7 @@ compare exp-err err || fail=1 ...@@ -291,7 +291,7 @@ compare exp-err err || fail=1
# Negative value # Negative value
cat <<\EOF > exp-err || framework_failure cat <<\EOF > exp-err || framework_failure
error: invalid timeout error: Numeric value for <timeout> option is malformed or out of range
EOF EOF
virsh -q -c $test_url event --all --timeout -1 >out 2>err && fail=1 virsh -q -c $test_url event --all --timeout -1 >out 2>err && fail=1
test -s out && fail=1 test -s out && fail=1
...@@ -300,7 +300,7 @@ compare exp-err err || fail=1 ...@@ -300,7 +300,7 @@ compare exp-err err || fail=1
# Zero. This is not a valid timeout, but the value is parsed # Zero. This is not a valid timeout, but the value is parsed
# correctly # correctly
cat <<\EOF > exp-err || framework_failure cat <<\EOF > exp-err || framework_failure
error: invalid timeout error: Numeric value for <timeout> option is malformed or out of range
EOF EOF
virsh -q -c $test_url event --all --timeout 0 >out 2>err && fail=1 virsh -q -c $test_url event --all --timeout 0 >out 2>err && fail=1
test -s out && fail=1 test -s out && fail=1
......
...@@ -1869,13 +1869,17 @@ vshCommandOptTimeoutToMs(vshControl *ctl, const vshCmd *cmd, int *timeout) ...@@ -1869,13 +1869,17 @@ vshCommandOptTimeoutToMs(vshControl *ctl, const vshCmd *cmd, int *timeout)
int rv = vshCommandOptInt(cmd, "timeout", timeout); int rv = vshCommandOptInt(cmd, "timeout", timeout);
if (rv < 0 || (rv > 0 && *timeout < 1)) { if (rv < 0 || (rv > 0 && *timeout < 1)) {
vshError(ctl, "%s", _("invalid timeout")); vshError(ctl,
_("Numeric value for <%s> option is malformed or out of range"),
"timeout");
return -1; return -1;
} }
if (rv > 0) { if (rv > 0) {
/* Ensure that we can multiply by 1000 without overflowing. */ /* Ensure that we can multiply by 1000 without overflowing. */
if (*timeout > INT_MAX / 1000) { if (*timeout > INT_MAX / 1000) {
vshError(ctl, "%s", _("timeout is too big")); vshError(ctl,
_("Numeric value for <%s> option is malformed or out of range"),
"timeout");
return -1; return -1;
} }
*timeout *= 1000; *timeout *= 1000;
......
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册