提交 ff049d22 编写于 作者: M MATSUDA Daiki 提交者: Daniel Veillard

agent: add qemuAgentArbitraryCommand() for general qemu agent command

Add a function qemuAgentArbitraryCommand() for general qemu agent command.
Signed-off-by: NMATSUDA Daiki <matsudadik@intellilink.co.jp>
上级 05447e3a
......@@ -1410,3 +1410,33 @@ qemuAgentSuspend(qemuAgentPtr mon,
virJSONValueFree(reply);
return ret;
}
int
qemuAgentArbitraryCommand(qemuAgentPtr mon,
const char *cmd_str,
char **result,
int timeout)
{
int ret = -1;
virJSONValuePtr cmd;
virJSONValuePtr reply = NULL;
*result = NULL;
if (timeout < VIR_DOMAIN_QEMU_AGENT_COMMAND_MIN)
return ret;
cmd = virJSONValueFromString(cmd_str);
if (!cmd)
return ret;
ret = qemuAgentCommand(mon, cmd, &reply, timeout);
if (ret == 0) {
ret = qemuAgentCheckError(cmd, reply);
*result = virJSONValueToString(reply, false);
}
virJSONValueFree(cmd);
virJSONValueFree(reply);
return ret;
}
......@@ -77,4 +77,9 @@ int qemuAgentFSThaw(qemuAgentPtr mon);
int qemuAgentSuspend(qemuAgentPtr mon,
unsigned int target);
int qemuAgentArbitraryCommand(qemuAgentPtr mon,
const char *cmd,
char **result,
int timeout);
#endif /* __QEMU_AGENT_H__ */
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册