From: Andrea Bolognani Date: Fri, 15 May 2015 16:14:41 +0000 (+0200) Subject: virsh: Improve handling of send-process-signal --pid. X-Git-Tag: v1.2.16-rc1~57 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=8e2c5940cdcf3b73e2ebf17acbfcf5d6b8dc6c2f;p=thirdparty%2Flibvirt.git virsh: Improve handling of send-process-signal --pid. Use vshCommandOptLongLong() instead of retrieving the value as a string and converting it to a number manually. --- diff --git a/tools/virsh-domain.c b/tools/virsh-domain.c index 10d01b61cc..36f3e6c769 100644 --- a/tools/virsh-domain.c +++ b/tools/virsh-domain.c @@ -8262,7 +8262,6 @@ cmdSendProcessSignal(vshControl *ctl, const vshCmd *cmd) { virDomainPtr dom; bool ret = false; - const char *pidstr; const char *signame; long long pid_value; int signum; @@ -8270,17 +8269,16 @@ cmdSendProcessSignal(vshControl *ctl, const vshCmd *cmd) if (!(dom = vshCommandOptDomain(ctl, cmd, NULL))) return false; - if (vshCommandOptStringReq(ctl, cmd, "pid", &pidstr) < 0) + if (vshCommandOptLongLong(cmd, "pid", &pid_value) < 0) { + vshError(ctl, + _("Numeric value for <%s> option is malformed or out of range"), + "pid"); goto cleanup; + } if (vshCommandOptStringReq(ctl, cmd, "signame", &signame) < 0) goto cleanup; - if (virStrToLong_ll(pidstr, NULL, 10, &pid_value) < 0) { - vshError(ctl, _("malformed PID value: %s"), pidstr); - goto cleanup; - } - if ((signum = getSignalNumber(ctl, signame)) < 0) { vshError(ctl, _("malformed signal name: %s"), signame); goto cleanup;