mirror of https://gitee.com/openkylin/libvirt.git
utils: More useful error message for hook script failure
Commit 3709a386
ported hooks codes to new command execution API,
together with the useful error message removed. Though we can't
get "errbuf" from the new command execution API anymore, still
we can give a more useful error.
https://bugzilla.redhat.com/show_bug.cgi?id=726398
This commit is contained in:
parent
b590866bdb
commit
ef765169dd
|
@ -193,6 +193,7 @@ int
|
||||||
virHookCall(int driver, const char *id, int op, int sub_op, const char *extra,
|
virHookCall(int driver, const char *id, int op, int sub_op, const char *extra,
|
||||||
const char *input) {
|
const char *input) {
|
||||||
int ret;
|
int ret;
|
||||||
|
int exitstatus;
|
||||||
char *path;
|
char *path;
|
||||||
virCommandPtr cmd;
|
virCommandPtr cmd;
|
||||||
const char *drvstr;
|
const char *drvstr;
|
||||||
|
@ -257,7 +258,13 @@ virHookCall(int driver, const char *id, int op, int sub_op, const char *extra,
|
||||||
if (input)
|
if (input)
|
||||||
virCommandSetInputBuffer(cmd, input);
|
virCommandSetInputBuffer(cmd, input);
|
||||||
|
|
||||||
ret = virCommandRun(cmd, NULL);
|
ret = virCommandRun(cmd, &exitstatus);
|
||||||
|
if (ret == 0 && exitstatus != 0) {
|
||||||
|
virHookReportError(VIR_ERR_HOOK_SCRIPT_FAILED,
|
||||||
|
_("Hook script %s %s failed with error code %d"),
|
||||||
|
path, drvstr, exitstatus);
|
||||||
|
ret = -1;
|
||||||
|
}
|
||||||
|
|
||||||
virCommandFree(cmd);
|
virCommandFree(cmd);
|
||||||
|
|
||||||
|
|
Loading…
Reference in New Issue